Merge in the 2.1-static-tuple-btree branch, and restore the string intern tweaks.
The tweaks basically involve not interning 'sha1:' chk strings, which we can be reasonably confident are only accessed as tuples, and thus get interned into the more efficient SimpleSet. Even further, we know that we won't be combining them into larger tuples [like we do with (file_id, revision_id)]. This saves quite a bit of space in the string interned dict, since chk keys actually make up the bulk of our keys.