Fix #350: APIManager.create_api now accepts SQLAlchemy column objects

A shot at issue #350 that I reported yesterday. The new syntax (`Model.name` instead of `'name'`) applies only to "direct" columns, since AFAIK SQLAlchemy has no cleaner & static-analysis-friendly way of referencing columns of related models.

As for tests, I wasn't completely sure what's the level of test coverage is common in this project, so I made some opportunistic changes to existing test cases. Let me know if you'd prefer a separate test case covering every facet of this new functionality.
There is an unnecessary line break before this line; line lengths should be as long as possible but no longer than 79 characters.