- renamed database to connection to better identify what it is (would database_connection be better though?) - moved basic_statement and basic_transaction to sqlite::detail - made sqlite::threadsafe() return the threading mode int, not a bool - renamed row::index() to row_number() so it isn't confused with column index - added typedef for deferred_transaction - added early rollback method to transaction_guard - allowed transaction_guard::~transaction_guard() to throw exceptions, since when it needs to, we're really screwed anyway - bugfix: query::reset() didn't reset the internal row counter - added query::num_results() - added docs/design-notes - reimplemented query::iterator so that increment() (which performs a step() on the query) now caches the returned row to be returned during dereference() (previously it stashed details and returned new row!?) - bugfix: resetting active queries during rollbacks would hang!