First pass at type specialized attributes. Does everything except type transitions.

Also I made an unholy mess of the codebase, so that should be fixed up.
grotesque hack
try to RPython
Rewrite all teh things. More maintainable now. Still missing:

* Allocation optimizations (each new attribute re-allocs the list)
* Changing the type of an instance var.
Changing attribute types.
needed argument
move functions, define a test, unused imports
some missing functions
RPython?
RPython?
final shot at PRython
Rpython
Merge branch 'master' into type-specialized-attrs
Make it work on 64-bit; probably broken on 32bit
32-bit compat
document the causes of these errors
Merge branch 'master' into type-specialized-attrs

Conflicts:
	tasks/travis.py
Merge branch 'master' into type-specialized-attrs
rewrite a bit
This is why you always run the tests.