Rely on CleanSQL for cleanliness checking in execute. Catch ProgrammingError.
Fixed checking wrong name for error handling result
Created Driver abstract base class and moved sqlite specific bits into SQLiteDriver
Filled out Driver with basic abstractmethods
Added update stub to SQLiteDriver
Renamed 'where' to 'criteria' for clarity
Using DbObject as base class for DB descendants, and removing tuple as base of Filter
Ignore build directory
Removed redundant DbObject.__init__
Collection.add returns the added object
Made CleanSQL.join_format class-agnostic
Implemented driver.update
Added basic transaction support to Driver
Reorder CRUD parameters for consistency: table, criteria, values, *
Renamed NoSuchTable to NoSuchTableError (see pep8 "Programming Recommendations")
Renamed NoColumns to NoColumnsError (see pep8 "Programming Recommendations")