- maintain the order of SQLAlchemy object attributes in the Colander schema
- use Colander defaults wherever explicit settings are not given
- added tests for confirming documentation examples
- added fix and test for issue #35 (thrown exception on encountering synonym() )
- made changes to accommodate SQLAlchemy >= 0.9a
Merge pull request #41 from tisdall/doctests

several fixes and improvements
- changed "missing" to colander.drop instead of None or
  empty lists so the resulting appstruct can be passed back
  into schema.serialize() without issue
  (Ex. Integer types caused colander.Invalid as None is not
  a valid integer value)
- likewise, don't add None values to dictionaries returned
  by dictify() so that can be used as an appstruct
- modified detection of autoincrement fields so they can
  be properly set to missing=colander.drop (wasn't detecting
  ForeignKey constraints)