Do not query database for non-spatial tables

This PR avoids unnecessary SQL queries of `geometry_columns` for tables that do not have any spatial columns.

Fix #71

* Add a private SpatialColumnInfo class to manage the spatial column
info query and memoization.
* Add mocha to test expectations.
Could these `attr_accessor`'s become `attr_reader`s?  Either way, I believe they could also be privatized as they are not used by anything outside of the class.