Implement SQLTables and changes to testing framework

1. Implement [SQLTables](http://msdn.microsoft.com/en-us/library/ms711831(v=vs.85).aspx) according to the spec. Queries for table metadata, with the special options of listing all the schemas, table types, or categories. 
2. Changes to the testing framework. Given that this is the first major function implemented, changes were made to account for the testing workflow.

It also doesn't seem like Github lets us squash the commits using their pull request system, which will make the commit logs noisy because I commit frequently.

This is also my first time writing C for something much larger than an assignment, so I'd appreciate feedback on best practices, etc. In particular, I'm confused because I thought macros were supposed to be mega-evil...but there's so many in here. Then again, this code is also from the 90s or something.

Feedback on the tests would also be appreciated. There's a good amount of coverage, but let me know if I missed any representative queries.