Pull out common code into core.py

Add "default" attribute for elements.
Add initial support for attributes.
Expand testing of valid attribute types.
Initial implementation of xs.Sequence.

Switch from using data descriptors (where it's harder to keep order)
and start using __getattr__ on ComplexType.