4.46: 7/29/2013
	* CORE: Added support for raw selects in inner queries.  More powerful and flexible.
	* CORE: Added support for @DatabaseField(readOnly = true) for query only fields.  Thanks to Casey.
	* CORE: Added support for using java.sql.Timestamp fields with @DatabaseField(version = true).
	* CORE: Added support for QueryBuilder.prepareStatementInfo() to return statement and args.  Thanks to SO user.
	* CORE: Fixed problems with SQLExceptions thrown during transaction rollbacks. Thanks to Miroslav Nadhajský. Bug #148.
	* CORE: Fixed a stupid bug in the handling of ColumnArgs and Strings (plus others).  Thanks to jon.  Bug #147.
	* CORE: Fixed eager-collection clear() which was broken.  Thanks to igromanru.  Bug #149.
	* CORE: Fixed eager-collection iterator.remove() which removed every other.  Thanks to igromanru.  Bug #150.
	* CORE: Added support for the javax.persistance @Basic annotation.  Thanks to Roland Oldenburg.  Bug #151.
	* JDBC: Made some portions of JdbcPooledConnectionSource protected for subclasses.  Thanks to Miroslav Nadhajsky.
	* ANDROID: Fixed possible problem with not closing Cursor in queryForFirst().  Thanks to Guillermo Campelo.  Bug #143.

4.45: 3/18/2013
	* CORE: Fixed bad bug introduced in 4.43 that broke date-string backwards compatibility.  Thanks to Howard Liberty. 
	* ANDROID: Added better exception handling around inner classes.  Thanks to Jonathan Caryl.
	* ANDROID: Fixed bad problem with recursion and OrmLiteConfigUtil.  Thanks to Jonathan Caryl.

4.44: 3/13/2013
	* CORE: Improved the speed of the version checking under Android.  Thanks much to Nick Campion.
	* ALL: Moved to github.com and to use git for all packages.

4.43: 2/5/2013 (svn r2719)
	* CORE: WARNING: changed format of date-string which broke backwards compatibility.  Use version 4.45+.
	* CORE: Added QueryBuilder.countOf() and queryRaw() methods as shortcuts to their DAO equivalents.
	* CORE: Added Where.queryForFirst(), queryRaw(), queryRawFirst(), countOf() methods as shortcut to QueryBuilder.
	* CORE: Added the ColumnArg feature to compare two columns using QueryBuilder in simple queries and joins.
	* CORE: Fixed a problem with GROUP BY, ORDER BY, and HAVING order.  Bug #134.
	* CORE: Fixed possible problem with field-type comparison in certain situations.  Thanks to shikajiro.  Bug #136.
	* CORE: Added ? arguments to QueryBuilder.orderByRaw(...) method.  Thanks a bunch to Nathan Jones.  Feature #138.
	* CORE: Added support for multiple JOIN statements.  Thanks to Ramps.  Feature #28.
	* CORE: Added ability to select log-type using "com.j256.ormlite.logger.type" system property.  See LoggerFactory.
	* CORE: Creating an empty foreign collection now mirrors the collection type.  "Fixes" bug #124.
	* CORE: Made the RuntimeExceptionDao implement ClosableIterarble.  Feature #34.
	* CORE: Added Dao.assignEmptyForeignCollection() method to replace the getEmptyForeignCollection().  Feature #31.
	* JDBC: Improved the log class detection and added support for Slf4j nad Log4j2.  Feature #27.
	* ANDROID: Added protections around missing classes when building class config.  Thanks to Bart.  Bug #133.
	* ANDROID: Fixed unclosed Cursor in AndroidDatabaseConnection.isTableExists().  Thanks to Andreas. Bug #137.
	* ANDROID: Added handling of inner classes that have annotations.  Thanks to Ваcилий Казьмин.  Feature #35.

4.42: 9/27/2012 (svn r2653)
	* CORE: Added basic INNER and LEFT JOIN capabilities for queries only.  Finally.  Work in progress.
	* CORE: Added ObjectFactory support on the DAO to better support Guice and other wiring.  Thanks to glenviewjeff.
	* CORE: Fixed a bug in comparing superclasses of the field with the field.  Thanks to glenviewjeff.  Bug #3538777.
	* CORE: Fixed problems with java.sql.Date and Timestmp persisters.  Thanks to Mohammad Moghimi.  Bug #3534395.
	* CORE: Added queryRawValue() method to the DAO for getting a single aggregate result.
	* CORE: Added last(), moveAbsolute(), and close() methods to DatabaseResults.  Thanks to Andrey.
	* CORE: Added a Dao.getConnectionSource() method to assign with the RuntimeExceptionDao.  Thanks to glenviewjeff.	
	* CORE: Added closeQuietly() methods for all close() methods in a number of classes/interfaces.
	* CORE: Added Dao.executeRawNoArgs() method for executing raw statements with no arguments.  Necessary for JDBC fix.
	* CORE: Added the ability to order your foreign collections ASC or DESC.  Thanks to Jaykob.  Feature #3571690.
	* ANDROID: Added support for auto-commit under Android using transactions.  Thanks to Chad Schultz.
	* ANDROID: Added getCount() and getPosition() cursor methods AndroidDatabaseResults.  Thanks to Andrey.
	* JDBC: Fixed some problems with the OracleDatabaseType.  Work in progress.  Thanks much to Stew.
	* JDBC: Added OTHER to the SqlType enum for custom persisters.  Thanks to Mark Rogers.
	* JDBC: Added a DatabaseConnection.executeStatement() method which uses Statement.execute() for SQL. Thanks to Stew.
	* JDBC: Fixed a problem with Oracle where we were asking for column info too early.  Thanks to Stew.  Bug #3570129.

4.41: 6/6/2012 (svn r2575)
	* CORE: Added java.sql.Date and java.sql.Timestmp data persister types.  java.util.Date is still recommended.
	* CORE: Added version checking which logs errors if core, jdbc, and android versions do not match. Thanks to nybblr.
	* CORE: Added a Dao.getRawRowMapper() for mapping result string to an object.
	* CORE: Added some handling of ForeignCollection with the javax.persistence.* annotations.
	* CORE: Fixed problem with maxForeignAutoRefreshLevel that made it ~worthless. Thanks to Andrea Sprega. Bug #3530801.
	* ANDROID: Fixed the updating of serializable and other byte[] fields.  Thanks to Yossi Wasserman.  Bug #3527685.

4.40: 4/16/2012 (svn r2516)
	* CORE: Fixed a couple of missing field configuration entries.   Thanks to Jeremy Stone.  Bug #3518474.
	* CORE: Fixed a problem that was causing FieldType to always use reflection.  Thanks to Jeremy Stone.  Bug #3518472.
	* ANDROID: Big performance bug fix when creating DAOs. Foreign fields always used reflection instead of table configs.

4.39: 4/13/2012 (svn r2485)
	* CORE: Deprecated @DatabaseField foreignColumnName, renamed to foreignFieldName. Thanks to Candlejack. Bug #3507094.
	* CORE: Changed dao.callBatchTasks() from throwing Exception to SQLException.  Thanks to JC.
	* CORE: Improved createOrUpdate() to use idExists() instead of expensive method. Thanks to Chris Nevill. Bug #3514164.
	* CORE: Fixed tough bug with table configs of self referencing classes. Thanks to Slava Tysianchuk. Bug #3517094.
	* CORE: Added support for start and endThreadConnection() and added dao.commit() and rollBack().  Thanks to AlexPal.
	* JDBC: Added support for preparedStatement.setQueryTimeout(millis).  Thanks to mjomble. Feature #3502803.
	* JDBC: Fixed bug with pooled connection source and connections with autoCommit off. Thanks to AlexPal. Bug #3517098.
	* ANDROID: Finally fixed the number of rows changed for insert/delete/update calls using SQLite CHANGES() pragma.
	* ANDROID: Decided to _not_ fix the columnName case sensitivity issue introduced in 4.37.  Thanks to Roman Zimmer.
	* ANDROID: Fixed bad bug that was prematurely clearing DAO configs.  Thanks to Slava Tysianchuk.  Bug #3516920.

4.38: 3/23/2012 (svn r2426)
	* ANDROID: Fixed bad ObjectCache bug deep in Android shutdown/startup logic. Thanks to Filipe Leandro. Bug #3510266.

4.37: 3/21/2012 (svn r2406)
	* CORE: Fixed blocking bug where object cache exceptions would be thrown.  Thanks to Filipe Leandro.  Bug #3509853.
	* CORE: Fixed bug where LocalLog was overwriting log data written to local file.  Thanks to mjomble.  Bug #3437823.
	* ANDROID: Fixed a bug with Android API lookup of column names with periods. Thanks to Sebastian Roth. Bug #3509386.

4.36: 3/19/2012 (svn r2389)
	* CORE: Added support for @DatabaseField(foreignColumnName="name") to map foreign to non-ID.  Thanks to Mathias Lin.
	* CORE: Added update() and refresh() to ForeignCollection which call through to the inner Dao.
	* CORE: Improved the custom data persister code so it can extend one of the types.  Added docs and example.
	* CORE: Added a Joda DateTime persister which uses reflection.
	* CORE: Increased synchronization around some code to be proactive about constructor reordering race-conditions.
	* CORE: Added updateAll(), refreshAll(), refreshCollection() for eager foreign collections.  Thanks to Chris Nevill.
	* CORE: Added logging of exceptions to the RuntimeExceptionDao.  Thanks to Kaan.
	* CORE: Revamped the Logger stuff to remove new Object[] that was happening on each Logger call. Bug #3509015.
	* JDBC: Fixed a bug in where transactions aren't committed with auto-commit off.  Thanks to Tony. Bug #3508746. 

4.35: 2/22/2012 (svn r2337)
	* CORE: Bug where not all queried objects were added to cache. Thanks to Filipe Leandro. Bug #3491418.

4.34: 2/22/2012 (svn r2318)
	* CORE: Fixed restriction on Long auto-incremented SQLite ids. Thanks to John Kristian. Bug #3474479.
	* CORE: Added support for sql NOT IN clause to where().  Thanks to Marvin Jomble.  Feature #3474550.
	* CORE: Added support for sql HAVING clause to QueryBuilder.  Thanks to Stephen Couchman.  Feature #3470923.
	* CORE: Added updateBuilder.update() and deleteBuilder.delete().  Thanks to Marvin Jomble.  Feature #3475613.
	* CORE: Fixed problem with ForeignCollections when inserting into cache. Thanks to Nick Campion. Bug #3486577.
	* CORE: Revamped the CloseableIterator to support first, previous, ... moving methods to support more than next.
	* CORE: Added result-flags to some of the iterator methods to allow forwards/backwards in JDBC.
	* CORE: Refactored the FieldConverter and BaseDataType stuff a bit to remove some duplicate code.
	* CORE: Added convenience QueryBuilder.queryForFirst() and queryRawFirst() methods.
	* CORE: Added setArgumentHolderValue() to the PreparedStmt so we can set an argument on prepared queries directly.
	* CORE: Removed the @DatabaseFieldSimple and friends annotations that were deprecated in 4.30.
	* ANDROID: Significantly simplified, improved the internal DAO caching.  Thanks to Ben Mosher.  Bug #3487674. 
	* ANDROID: Fixed missing exception handling in AndroidConnectionSource.  Thanks to Roger Keays.  Bug #3474501.
	* ANDROID: Added isTableExists() support to Dao/AndroidDatabaseConnection. Thanks to Patrick. Feature #3475173.

4.33: 1/12/2012 (svn r2249)
	* CORE: Fixed a find-bugs result from the eager collection equals method that would always return false.
	* CORE: Fixed problem with foreign collections and multiple foreign fields. Thanks to André. Bug #3473078.
	* JDBC: Fixed a problem with SqlServer or JTDS driver returning -1 for some statements.  Bug 3463333.

4.32: 1/11/2012 (svn r2229)
	* CORE: Fixed bad bug where foreign objects cannot have primitive ids.  Thanks to Vladimir.  Bug #3456339.
	* CORE: Fixed bug where foreign collections couldn't handle two foreign fields. Thanks to André. Bug #3471320.
	* CORE: Added support for a BIG_DECIMAL_NUMERIC to support existing NUMERIC database fields.
	* JDBC: Bug where SQLite class warning is spit out for other databases.  Thanks to Kaan.  Bug #3472476.
	* JDBC: Fixed problem with MySQL's creating of index if not exists.  Bug #3472782.

4.31: 12/8/2011 (svn r2198)
	* CORE: Added missing IF NOT EXISTS handling to index creation.  Thanks to mjomble.  Bug #3437795.
	* CORE: Fixed problem with hasNext() always moving cursor forward. Thanks to Tom Tantisalidchai. Bug #3449877.
	* CORE: Fixed bad bug which stopped field being updated with null. Thanks to Javier Hinmel. Bug #3454723.
	* ANDROID: Added better SQL logging to Android connections.
	* JDBC: Added better SQL logging to JDBC connections.

4.30: 11/10/2011 (svn r2156)
	* CORE: Added ability to specify ForeignCollection columns in selectColumns(). Thanks to @Timo. Bug #3428751.
	* CORE: Added two new Dao methods: mapSelectStarRow and getSelectStarRowMapper for easier mapping of results.
	* CORE: Deprecated the @DatabaseFieldSimple and other smaller annotations that were causing confusion.  Sorry.
	* CORE: Fixed config loader support for foreignAutoCreate and version fields.  Thanks to Chase.  Bug #3433599.
	* CORE: Fixed foreignAutoCreate bug where parent object didn't get foreign id.  Thanks to Chase. Bug #3434550.
	* CORE: Added TableInfo.hasColumnName() method.  Thanks to JC.  Feature #3435754.
	* CORE: Added Dao.idExists(ID id) to see if row with id exists. Thanks to Craig Andrews. Feature #3300688.
	* CORE: Moved limit() and offset() to take long parameters to be more consistent.  Possible deprecation warnings. 
	* ANDROID: Added some reflection fu to make reading Annotations ~20 times faster.  Thanks a ton to Josh Guilfoyle.
	* ANDROID: Fixed problems with Dao.countOf() method.  Thanks to Pedro Velasco.  Bug #3434508.
	* JDBC: Added support for better escaping of "schema"."table" in Postgres.  Thanks to Johny Jugianto.

4.29: 10/25/2011 (svn r2101)
	* ANDROID: Fixed a casting bug in OrmLiteSqliteOpenHelper from 4.28.  Thanks to Craig Andrews.  Bug #3428429. 

4.28: 10/23/2011 (svn r2074)
	* CORE: Added Dao.countOf(PreparedQuery) and QueryBuilder.setCountOf(true).  Thanks to Pedro Velasco.
	* CORE: Added QueryBuilder.rawColumns(String... columns) to better support aggregates.  Thanks to Pedro Velasco.
	* CORE: Added support for @DatabaseField(version=true) and row version field for numbers and Date's.  Cool.
	* CORE: Fixed a field that was missing transient, making LazyForeignCollection not serializable. Bug #3426884.
	* ANDROID: Added OrmLiteSqliteOpenHelper.getRuntimeExceptionDao(). Thanks to João Bosco. Feature #3425272.
	* JDBC: Fixed a spin loop in the JdbcPooledConnectionSource.  Thanks to Ali Aksakarya.  Bug #3426903.

4.27: 10/11/2011 (svn r2019)
	* CORE: Added @DatabaseField(foreignAutoCreate=true) for auto-creating foreign fields with blank IDs using the internal DAO.
	* CORE: Added support for storing BigDecimal and BigInteger fields.  Thanks to Pedro Velasco.  Feature #3414432.
	* CORE: Added support for the javax.persistence.Enumerated annotation for setting @Enumerated(ORDINAL) or @Enumerated(STRING).
	* CORE: Fixed problem with the columnDefinition field handling in @DatabaseFieldOther.  Thanks to Flo.  Bug #3419779.
	* CORE: Removed the restriction on classes with just the ID.  Update now just returns 0.
	* ANDROID: Better handling of errors during java auto-detection around the new table configuration code.  Thanks to Ming Lin.

4.26: 9/26/2011 (svn r1978)
	* CORE: Added the first take on a object cache.  Thanks to the dev list for suggestions.
	* CORE: Improved the javax.persistence annotation handling to support @JoinColumn(name="xxx").  Thanks to Andrew Sleeman.
	* CORE: Added a RuntimeExceptionDao for wrapping Dao operations in RuntimeExceptions.  Thanks to the Android list.
	* CORE: Added a Dao.deleteById() method for removing an instance if you just have the id.
	* CORE: Added @DatabaseField(columnDefiniton = "...") for hand-defining the field SQL.
	* CORE: Removed the deprecated RawResults class that was replaced in 4.10.
	* CORE: Fixed problem with self-generated id fields not being marked as primary. Thanks to Craig Andrews. Bug #3406600.
	* CORE: Fixed a problem where default was canBeNull=false with javax persistence macros.  Thanks to A.  Bug #3410640.
	* CORE: Removed the maxForeignLevel() field from @DatabaseField which was deprecated in 4.22.
	* CORE: Added table and field configuration file reading and writing.
	* CORE: Added implements Serializable to the foreign collection objects.  Thanks to Mariák Kálmán.  Bug #3411227. 
	* ANDROID: Added field configuration utility to avoid Dao creation performance problems with annotations.  Thanks to Ian Dees.
	* ANDROID: Added @DatabaseFieldSimple and other smaller annotations for speeding up Android configuration.
	* ANDROID: Added SQLiteDatabase constructor to AndroidConnectionSource for external SQLite databases.  Thanks to Michael.
	* ANDROID: Removed the SqliteOpenHelperFactory class that was deprecated in 4.20.
	* ANDROID: Fixed issue that was not properly supporting CREATE IF NOT EXISTS.  Thanks to birbird.  Bug #3412135.
	* ANDROID: Added RuntimeExceptionDao for shielding applications from _some_ of the SQLException handling.

4.25: 8/22/2011 (svn r1897)
	* CORE: Fixed problem with id=true with UUID fields not working.  Thanks to Evan Grim.  Bug #3392691.
	* CORE: Exposed the fields in CreateOrUpdateStatus that were package protected.  Thanks to steffen.  Bug #3383768.
	* CORE: Added to FieldType getter for foreign field type.  Thanks to Jean-Maxime Pelletier.  Feature #3386969.
	* CORE: Added allowGeneratedIdInsert feature to allow optional generated-id fields.  Thanks to Craig Andrews.
	* CORE: Fixed problem with null ids an createOrUpdate.  Thanks to João Bosco.  Bug #3390169.
	* CORE: Fixed race condition with field and constructor accessibility.  Thanks to Jeroen Rakhorst.  Bug #3381083.
	* CORE: Added config file to the LocalLog so we can specify which classes get which log levels.

4.24: 7/18/2011 (svn r1840)
	* CORE: Fixed problem with updating a field's value to null using UpdateBuilder. Thanks to Jeremy Mcjunkin. Bug #3359086.
	* CORE: Fixed foreign collection bug where clear, remove, ... affected whole table. Thanks to Patras Vlad. Bug #3313003.
	* CORE: Bug with the setting of the value of serializable types.  Thanks to kyle lampert.  Fixes #3363423.
	* CORE: Added feature where foreign collections now contain objects whose foreign fields are set with the parent object.
	* CORE: Added Dao.queryForMatchingArgs() and queryForFieldValuesArgs() to avoid SQL escaping issues.  Thanks to coder sam.
	* CORE: Added support for CREATE TABLE IF NOT EXISTS for Postgres > 9.1  Thanks to Daniel Colchete.
	* CORE: Added arguments to Where.raw() and added Where.rawComparison() to better handle escaped args. Thanks to Daniel Colchete.
	* CORE: Removed deprecated raw results methods that were replaced in 4.10.
	* CORE: Removed deprecated JAVA_DATE* types that were replaced in 4.12.
	* ANDROID: Added a OrmLiteBaseActivityGroup to the various base classes.  Thanks to zachawilson.

4.23: 6/3/2011 (svn r1805)
	* CORE: Allow the user to be able to override the persister for the built-in types as well.
	* CORE: Added a orderColumnName field to the ForeignCollectionField to order collections based on a column.
	* CORE: Moved the external log classes over to the JDBC package to make core a bit smaller.
	* CORE: Added queryForSameId(), createIfNotExists(), and createOrUpdate() to DAO.

4.22: 5/19/2011 (svn r1777)
	* CORE: Fixed major problem with DAO loops and caching.  Thanks much to the user list.  Bug #3301588.
	* CORE: Fixed problem with queryForMatching() and queryForFieldValues() if no fields. Thanks to JC. Bug #3301253.
	* CORE: Fixed problem with configuring fields in base class without annotations. Thanks to JC, Rahan. Bug #3301698.
	* CORE: Fixed problem with LazyForeignCollection.toArray(T[]).  Thanks to Skylar.  Bug #3302924.
	* CORE: Added initial support for defining external DataPersister classes for persisting non-built-in types. Thanks to Craig.
	* CORE: Removed auto-downcasing of hand wired table name in DatabaseTableConfig.  Thanks to Tomas.  Bug #3302976.
	* CORE: Added the maxEagerForeignCollectionLevel field to the @ForeignCollectionField annotation to limit recursion.
	* CORE: Renamed the maxForeignLevel field in @DatabaseField to be maxForeignAutoRefreshLevel to make more sense.
	* CORE: Added support for creating empty foreign collection field so you can use add() on it when creating. Thanks to Craig.
	* CORE: Added the concept of closeLastIterator() to the DAO and CloseableWrappedIterable for reentrant usage.
	* CORE: Added better connection/statement testing code and fixed some additional missing closes.
	* JDBC: Tweaked the HSQLdb database type to acknowledge that it seems to support inner transactions.

4.21: 5/5/2011 (svn r1721)
	* CORE: Added maxForeignLevel=1 type of setting to @DatabaseField to limit the foreign field recursive calls.
	* CORE: Added a isOpen() to the ConnectionSource interface and implementations.
	* CORE: Fixed a problem with the foreign auto-refresh loops and the last level.  Thanks to Xavier.  Bug #3296400.
	* JDBC: Fixed a _very_ bad, embarrassing problem with unclosed statements.  Thanks to MathieuLoutre.  Bug #3298098.
	* ANDROID: Added better logging and protection around use of the open-helper and AndroidConnectionSource after close.

4.20: 4/30/2011 (svn r1686)
	* CORE: Refactored a couple of places to try and improve DAO creation with foreign fields.  Thanks to the user list.
	* CORE: Improved the dao caching when creating/dropping tables.  Thanks to the user list.
	* CORE: Refactored TableUtils.clearTable() and other methods to improve memory usage.
	* CORE: Deprecated the BaseDao.createDao() methods.  The DaoManager.createDao() methods should be used instead.
	* CORE: Improved the size guessing during StringBuilder creation to reduce enlarge calls.  Thanks to Andy.
	* CORE: Added support for uniqueCombo field in DatabaseField annotation that supports combined unique fields.
	* CORE: Turned the SelectArg into the ArgumentHolder interface so we could add other implementations.
	* CORE: Added QueryBuilder.orderByRaw() and groupByRaw() so users can construct their own SQL.  Thanks to jrj.
	* CORE: Fixed interaction between foreignAutoRefresh and foreign collections.  Thanks to jaxelrod.  Bug #3290093.
	* CORE: Fixed a bug with using the UpdateBuilder with Date fields.  Thanks to stewert.  Bug #3286455.
	* CORE: Fixed some documentation problems with PreparedQuery.  Thanks to Harry.
	* ANDROID: Significantly improved the mechanism to inject the open helper class.  Thanks to JC and Chris Banes.
	* ANDROID: Improved the OrmLiteBaseActivity and other base classes' use of the context.  Thanks to Chris Banes.
	* ANDROID: Added level caching for speed and added a ORMLite log tag for easy enabling all logs.

4.19: 4/11/2011 (svn r1638)
	* CORE: Fixed stupid DaoDaoEnabled.delete() cut and paste bug.  Bug #3276679.
	* CORE: Added support for storing char fields with ORMLite.  Derby, of course, was the most painful to get working.
	* CORE: Added convenience query() and iterator() methods to the QueryBuilder and Where objects.
	* CORE: Added a countOf() call to the Dao to return the select count(*) result for the table.
	* CORE: Added a clearTable() method to TableUtils.  It will do a TRUNCATE if supported otherwise a DELETE.
	* CORE: Added a convenience queryForEq() method to the Dao which matches on a single field value.
	* CORE: Added support for CREATE TABLE IF NOT EXISTS for those databases which support it: H2, MySQL, SQLite.
	* CORE: Added handling of >2 arguments to Where.and() and or() which can now string together many clauses with AND/OR.
	* CORE: Added a Dao.queryForMatching() method to find entries in the database that match fields in the object passed in.
	* CORE: Added a Dao.queryForFieldValues() method to find entries in the database that match the field/value map argument.
	* CORE: Tightened up some of the allocations done internally when building statements.

4.18: 3/30/2011 (svn r1593)
	* CORE: Bug with lazy foreign collections are not properly limiting iterator. Bug #3260099. Thanks to Brady.
	* CORE: Bug with updating of foreign collections.  Bug #3260103. Thanks to ede.
	* CORE: Added better support for batch tasks by using a database transaction if auto-commit isn't supported.
	* ANDROID: You can now use the callBatchTask method on the DAO which will use a transaction.

4.17: 3/27/2011 (svn r1576)
	* CORE: Fixed a couple of places were I was using Java 1.6 only methods.  Bug #3260096.  Thanks to Javier and jc.
	* CORE: Improved the reentrance during query and class configuration initialization.
	* CORE: Improved the DaoManager handling of generic dao classes and a registerDao method.  Thanks to jc.
	* ANDROID: Fixed Android v1.6 support by removing some Java 1.6 methods.

4.16: 3/23/2011 (svn r1553)
	** WARNING: ** 4.16 was released with some Java 1.6 calls which broke a lot of people.  This was fixed in 4.17.
	* CORE: Added support for @@ForeignCollectionField which supports eager, lazy loaded collections of foreign objects.
	* CORE: Added a DaoManager which caches DAOs that are constructed so we only do it once per class.  Thanks to jc.
	* CORE: Added BaseDaoEnabled class for supporting data objects which can self refresh/update/etc..  Some refactoring.
	* CORE: Added UUID DataType for supporting the storing UUID fields.  Auto-generation of UUID ids also works.  Thanks to jc.
	* CORE: Added STRING_BYTES DataType for supporting the storing of Unicode strings as byte[] blobs in the database.
	* CORE: Fixed problem with SQLite (JDBC, Android) was not handling nested transactions correctly.  Bug #3208074.
	* Android: Users should consider using the new DaoManager instead of making DAOs by calling BaseDaoImpl directly.
	* Android: Fixed problem with SQLite nested transactions correctly.  They are not supported under Android.
	* Android: Added the STRING_BYTES DataType so you can store Unicode strings in SQLite appropriately.

4.15: 3/7/2011 (svn r1513)
	* CORE: Fixed a problem where Integer and Long fields could not be id fields.  Bug #3202117.
	* CORE: Resolved bad bug with querying for objects with null foreign field values. Bug #3199649. Thanks to Micael.
	* CORE: Removed the confusing Where().foreignIdEq() and foreignIdIn() methods.  Little extra value and loads of confusion.
	* CORE: Refactored +1/-1 dance that core was doing to access and set SQL arguments.  Now everything is 0 based in -CORE.
	* JDBC: Changed TableCreator to take a list of Dao instead of BaseDaoImpl.
	* JDBC: Added alpha version of a generic ODBC database type. Had to refactor null detection. Thanks much to Dale Asberry.
	* JDBC: Added alpha version of a Netezza database type.  Thanks much to Richard Kooijman.

4.14: 2/28/2011 (svn r1474)
	* CORE: Added BYTE_ARRAY type for handling byte[] directly and not as a serializable.  dataType _must_ be specified.
	* CORE: Changed SERIALIZABLE type so that it _must_ be specified with the dataType.
	* CORE: Added a Where.raw() method which allows you to inject a raw statement into the WHERE SQL clause.

4.13: 2/26/2011 (svn r1453)
	* CORE: Added a special default string to @DatabaseField to allow default values of "".  Bug #3191367.
	* CORE: Added parameters to the queryRaw(), updateRaw(), and executeRaw() DAO methods.  Thanks to Luke.
	* CORE: Added support for the QueryBuilder.offset() method.  Not supported on all database types.
	* CORE: Added initial ping statements for verification that the database connection is still valid.
	* CORE: Revamped the test hierarchy and implemented H2 stubs to be able to test CORE better.
	* ANDROID: LONG_STRING handling under Android never worked.  Bug #3192744.
	* JDBC: Added isTableExists() boolean to the DAO and the DatabaseConnection.  This does not work in Android.
	* JDBC: Added a new constructor and other methods to allow use of TableCreator outside of Spring.
	* JDBC: Revamped the jdbc pooled connection source to add a keep-alive thread and connection testing.

4.12: 2/17/2011 (svn r1417)
	* CORE: Added LONG_STRING data type for supporting longer String fields.
	* CORE: Renamed and deprecated data types JAVA_DATE, JAVA_DATE_LONG, and JAVA_DATE_STRING to remove the JAVA_ prefix.
	* JDBC: Added DaoFactory class for spring to create DAOs without having to define a Dao subclass.
	* JDBC: Fixed spring TableCreator creating of tables from just the class name.  Bug #3182783.
	* ALL: Updated documentation with more examples and revamped examples to be more stand-alone.

4.11: 2/14/2011 (svn r1382)
	* CORE: Added Where.in(QueryBuilder) and Where.exists(QueryBuilder) sub-query handling.
	* CORE: Added executeRaw() and updateRaw() methods to the Dao interface and associated classes.
	* CORE: Added proper checking for the log level _before_ expanding the {} args.  Bug #3180862.
	* CORE: Fixed missing save/clear of special connection for setting autocommit for batch tasks.  Bug #3178539.
	* CORE: Made some fields and methods in BaseDaoImpl protected for folks extending this the base dao.  Thanks to jc.
	* CORE: Replaced NPE with better SQLException if trying to update just the id.  Bug #3178360.  Thanks to jc.
	* CORE: Added Where.idEq(), Where.foreignIdEq(), and Where.foreignIdIn methods to expand query functionality.
	* CORE: Added better handling of nulls returned by RawRowMapper.  It also now throws SQLException.  Thanks to Larry.
	* ANDROID: Exposed the cursor from the iterator and android database results.

4.10: 2/2/2011 (svn r1339)
	* CORE: Revamped the logging classes to use Levels.  Also added a JavaUtilLog implementation.
	* CORE: Added support for the foreignAutoRefresh boolean in DatabaseField which automagically refreshes foreign fields.
	* CORE: Significantly refactored the RawResults class (now deprecated) and created GenericRawResults.
	* CORE: Dao.queryForAllRaw() and Dao.iteratorRaw() now deprecated.  Replaced with Dao.queryRaw() methods.
	* CORE: Added the ability to get results as an array of Objects when you pass in the column-types.
	* CORE: Found some unclosed statements in update(PreparedUpdate), delete(PreparedDelete) methods.  Bug #3170021.
	* ANDROID: Added missing OrmLiteBaseListActivity base class.
	* ANDROID: Reordered the log class detection to put Android Log before commons logging.  Bug #3167100.
	* ANDROID: Split out the -core from this package.  You now need to install BOTH core and android (or jdbc) packages.
	* ANDROID: Removed the deprecated AndroidTableUtils class.
	* ANDROID: Better wrapping of android.database.SQLException with java.sql.SQLException.
	* JDBC: Split out the -core from this package.  You now need to install BOTH the core and jdbc (or android) packages.
	* ALL: Added LICENSE.txt file to all releases and documentation.  It is basically the ISC public domain license.

4.9: 1/26/2011 (svn r1286)
	* CORE: Changed the generated index names to have a table-name prefix and always have a "_idx" suffix.

4.8: 1/25/2011 (svn r1271)
	* CORE: Added uniqueIndex = true and uniqueIndexName = "..." to the DatabaseField annotation to create unique indexes.
	* ANDROID: Fixed the resulting jar so that it doesn't include the -core java files as well.
	* JDBC: Fixed the resulting jar so that it doesn't include the -core java files as well.

4.7: 1/24/2011 (svn r1250)
	* CORE: Added index = true and indexName = "..." to the DatabaseField annotation to create indexes.  Thanks to Larry.
	* CORE: Added a <T,ID> generic arguments to the Where() to support a convenience prepare() method.
	* CORE: Added a close() method to RawResults which will close the iterator if returned from iteratorRaw().
	* ANDROID: Fixed the javadocs so they get merged in from CORE.  Still struggling with the source jar.
	* JDBC: Fixed the javadocs so they get merged in from CORE.  Thanks to jaxelrod.  Still struggling with the source jar.

4.6: 12/15/2010 (svn r1217)
	* CORE: Fixed issues with infinite recursion if there is a foreign object loop.  Bug #3137579.
	* CORE: Revamped the call structure internally to make way for the SimpleDB backend.  Exposed FieldType array more.
	* CORE: Removed some old deprecated methods from QueryBuilder and TableUtils.
	* ANDROID: Added protection in case subclass onCreate is called so another connection isn't saved.  Bug #3117883.

4.5: 11/17/2010 (svn r1178)
	* CORE: Fixes some problems with Dates and Enums being id types.
	* CORE: Fixed a big problem with boolean value escaping for some database types.  Bug #3110466.
	* CORE: Added code to throw exceptions when Serializable fields are ids or part of SQL comparison.  Bug #3110468.
	* CORE: Added support for fields being required to be SelectArgs (Date for example).  Bug #3110948.
	* JDBC: Added better detection of database types from the URL.
	* JDBC: Changed SQLite boolean representation to be 1/0 instead of true/false.  Bug #3110467.
	* JDBC: Added callBatchTasks() method to the Dao for running batch tasks.  Not applicable to Android.
	* JDBC: Removed some deprecated methods from DatabaseTypeUtils.
	* JDBC: Significantly improved the testing for all field types.  Thanks to Larry for point out some critical bugs.

4.4: 11/10/2010 (svn r1135)
	* CORE: Fixed a major problem with refreshing some field types.  Bug #3106962.

4.3: 11/9/2010 (svn r1113)
	* CORE: Renamed the ConnectionSource#saveTransactionConnection and clear to be saveSpecialConnection and clear.
	* CORE: Added functionality to RawResults to get all results as a List<String[]>.
	* CORE: Added functionality to RawResults to get all results as a List<T> with RawRowMapper.
	* CORE: Added nested transaction support.  Had to add per-database checks.  Bug #3106108.
	* CORE: Added walking up the super classes to find database fields.  Bug #3106109.
	* CORE: Added an isClosed() method to DatabaseConnection so the connection source can detect problems.
	* CORE: Removed some deprecated methods from the DAO and around the prepared statement code.
	* CORE: Added to the manual a section on identity columns.  Another section on database flavor notes.
	* JDBC: Added protection against inner connection saves.
	* ANDROID: Solve the problem of recursion in onCreate and onUpdate differently.  Bug #3096875.

4.2: 10/13/2010 (svn r1064)
	* CORE: Improved messaging around unknown columns.
	* CORE: Added a save and clearTransactionConnection to the TransactionManager.  Bug #3085345.
	* CORE: Added a missing releaseConnection call to the transactionManager.  Bug #3085344.
	* CORE: TableUtils was not releasing its database connection for table create/drop.  Bug 3086752.
	* JDBC: Added new reentrant, pooled connection manager JdbcPooledConnectionSource.  Needs to be reviewed!!
	* JDBC: Added support for transactions to DataSourceConnectionSource and pooled connection sources.

4.1: 10/8/2010 (svn r1031)
	* CORE: removed some old deprecated methods.
	* JDBC: fixed problem where connections were not being closed in the DataSource wrapper.  Bug #3083799.

4.0: 10/3/2010 (svn r1004)
	* CORE: Removed most external usage of the DatabaseType since the ConnectionSource now provides it.
	* CORE: BaseDaoImpl now knows how to self-initialize if constructed with the ConnectionSource.
	* CORE: Dao.queryBuilder() now returns a QueryBuilder.  You call QueryBuilder.prepare() to get a PreparedQuery.
	* CORE: Added Dao.updateBuilder() and deleteBuilder() for constructing custom UPDATE and DELETE statements.
	* CORE: Tightened up some more classes to remove unnecessary allocations.
	* JDBC: Deprecated the DatabaseTypeUtils calls since we should just construct a JdbcConnectionSource directly.
	* JDBC: Removed the DatabaseTypeFactory and simplified the Spring code since we removed the external DatabaseType.
	* JDBC: JdbcConnectionSource now knows how to self-initialize if constructed with the URL.
	* JDBC: DataSourceConnectionSource now needs the database URL as well as the DataSource.
	* ANDROID: Made changes to OrmLiteSqliteOpenHelper to remove the DatabaseType references.

------------------------------------------------------------------------------------------------------------------------

3.5: 9/28/2010 (svn r948)
	* CORE: Revamped the StatementBuilder to allow foreign fields to be queried from the object as opposed to just its id.
	* CORE: Because of the internal changes, the prepareStatment() call now can throw SQLException.
	* CORE: Significantly reduced the number of objects created by the DAO and other classes to lower GC overhead.
	* ANDROID: Core refactoring should improve speeds due to reduced memory overhead

3.4: 9/24/2010 (svn r916)
	* CORE: Revamped the log factory to use the internal LogType enum better and to construct the logs using reflection.
	* CORE: Added javax unique=true handling which should have been in 3.3.
	* ANDROID: Moved AndroidLog over to the Android package and reworked it to make direct calls to the android.util.Log.
	* ANDROID: Fixed problem with Android cursor were field-name escape characters were in column map.  Bug #3074249.

3.3: 9/22/2010 (svn r883)
	* CORE: Added UNIQUE constraint handling for ensuring fields are unique in all rows of the table.
	* CORE: Added a missing deprecated BaseJdbcDao that should have been in 3.2.
	* CORE: Added a better 'Getting Started' section to the manual.  Thanks much Nelson!
	* JDBC: Added a missing setDataSource to the DataSourceConnectionSource (fixes bug #3066894).

3.2: 9/14/2010 (svn r833)
	* Large internal code reorganization to allow database calls outside of JDBC for better Android support.
	* Split ormlite into 3 packages: -core, -jdbc, and -android
	* Abstracted DataSource/Connection/ResultSet classes to be ConnectionSource/DatabaseConnection/DatabaseResults interfaces.
	* Renamed the BaseJdbcDao to be BaseDaoImpl since it is no longer just JDBC
	* Renamed Dao.queryBuilder() -> Dao.statementBuilder() to accommodate custom delete, etc. statements
	* Renamed the QueryBuilder object to be StatementBuilder
	* Renamed the PreparedQuery object to be PreparedStmt
	* You don't set your DataSource on the DAOs anymore.  You use the DataSourceDatabaseConnection wrapper class.
	* Created an internal SqlType enumeration which was a better external abstraction of SQL type integers.

3.1: 9/12/2010 (svn r717)
	* Closer but still not ready.

3.0: 8/17/2010 (svn r561)
	* Not ready for prime time

------------------------------------------------------------------------------------------------------------------------

2.12: 8/16/2010 (svn r548)
	* Added a logger which should detect and delegate to the internal Android logger.
	* Changed the logger classes to use reflection to remove the compilation errors if classes aren't there.
	* Added to the documentation on how to remove log classes which are red because of missing classes.

2.11: 8/13/2010 (svn r537)
	* Removed the final dependency by using reflection to get at the javax.persistance annotations.
	* Added a persisted boolean to DatabaseField annotation so you can easily disable a field.

2.10: 8/13/2010 (svn r526)
	* Added some better support for Android OS built-in and 3rd party JDBC drivers.

2.9: 8/11/2010 (svn r514)
	* Found and fixed embarrassing problem where the local logger wasn't filtering by level. (bug #3043423)
	* Improved some docs.

2.8: 7/20/2010 (svn r503)
	* Found and fixed problems with boolean default values under Derby. (bug #3032387)
	* Trickle down changes which affected a lot of FieldType and JdbcType. Also improved the null handling.
	* Fixed the docs which referenced the BaseDao which was completely wrong.

2.7: 7/19/2010 (svn r488)
	* Revamped the logging classes so we can remove the hard dependency on commons-logging.
	* Changed MySQL to use DATETIME instead of TIMESTAMP for Date fields.
	* Added the createDao static method to the BaseJdbcDao so you can create DAOs without a new class.

2.6: 7/7/2010 (svn r473)
	* Fixed bug 3026487 where the limit in QueryBuilder was removed after a prepare.
	* Added log wrapping so we can remove the commons-logging dependency and replace it with a LocalLog impl.
	* Isolated the javax.persistence usage into one class for easy removal.
	* Renamed some database type methods.

2.5: 6/28/2010 (svn r458)
	* Finally figured out all of the tricky conf settings to get ORMLite published to the central maven repo.

2.4: 6/26/2010 (svn r397)
	* Fixed bug with Derby and Hsqldb where raw queries would not match quoted names. Capitalized field names.
	* Fixed a problem where value quoting for numbers and string arguments weren't handled right.
	* Fixed problem in MySQL where timestamps were by default not-null and set to the current time.
	* Fixed problem where default value and null specifier were generated in wrong order in CREATE TABLE.
	* Removed the restriction that primitive values couldn't have default values. Not sure why that was added.
	* Added initial code to allow the user to run raw String queries through the DAOs.
	* Changed the iterator returned by the Dao to a CloseableIterator to hide internal methods.
	* Added throwIfNull annotation to DatabaseField to throw if a null field is pulled into a primitive.

2.3: 6/23/2010 (svn r382)
	* Fixed a problem with null handling which would come back as 0s.

2.2: 6/18/2010 (svn r374)
	* Added enum support with both integer ordinal and string name support.
	* Changed the mechanism for detecting foreign fields with the the javax.annotations.

2.1: 6/14/2010 (svn r366)
	* Added the ability of storing Serializable objects as the new SERIALIZABLE type.
	* Fixed problem with generated ids under MS SQL.
	* Trimmed the test dependencies and documented them.
	* Got rid of unused close and destroy methods on the DAOs and JdbcTemplate.
	* Fixed bug with username and password settings on the connection.
	* Added Java 6 methods to the data source. Fixed Java 6 compile error.

2.0: 6/12/2010 (svn r344)
	* Finally took the plunge and removed the Spring dependency.  Down to 2 dependencies.

------------------------------------------------------------------------------------------------------------------------

1.13: 6/11/2010 (svn r332)
	* Fixed Postgres mixed case problem with fields and sequence numbers.

1.12: 6/7/2010 (svn r324)
	* Added database column case conversion because postgres had some problems with sequence name case
	* Added support for javax.persistence annotations (@Entity, @Column, @Id, @GeneratedValue).
	* Added a cache of the column positions for mapped queries to make the looking up of column names faster.
	* Finished up the next texinfo online and print documentation.
	* Added an initial try at a DB2 database type. Completely untested.

1.11: 5/21/2010 (svn r298)
	* Revamped the DatabaseTableConfig wiring.  Better.
	* Found a problem with long sequence names in Postgres.
	* Added new DatabaseFieldConfig wiring for hand or Spring wiring a class' details if you don't use annotations.
	* Fixed problem when a class just has a generatedId field which cannot be inserted or updated.
	* Found/fixed an interesting bug with generated-id and canBeNull = false.
	* Added queryForFirst method to the DAO hierarchy.

1.10: 5/15/2010 (svn r281)
	* Revamped TableInfo constructors to support taking in a list of FieldType for external object config.  Bit messy.
	* Made the InnoDB engine the default for tables created the the MySQL DatabaseType.

1.9: 5/14/2010 (svn r269)
	* Added support for using getXXX and setXXX methods instead of field access reflection.
	* Added initial TransactionManager for easy support of transactions.
	* Lots of notes, documentation, javadocs.
	* Added an int return value to the refresh() method to match update and delete.

1.8: 5/2/2010 (svn r246)
	* Starting initial work to support foreign objects.
	* Some refactoring of the id field assignment.

1.7: 4/29/2010 (svn r236)
	* Significant revamping of the junit tests.
	* Initial take on a MS SQL Server port using the JTDS driver.  Kudos to the JTDS folks.
	* Turns out that HSQLDB is a bit different from the rest (grrrr).   I added an appendLimitValue to database type.
	* Added LIMIT support to the package.  This caused a bunch of trickle down.
	* Renamed some of the is fields in the DatabaseType.  Added isLimitSupported because of Derby.  Grrrrrr.
	* Added an initial take on an Oracle database type.  No access to an Oracle db so some guesses.
	* Added a number min/max test.  Exposed some strangeness with Derby.
	* Duplicate field issue in test found by Sqlite.  Added additional tests and moved tmp databses.

1.6: 4/27/2010 (svn r195)
	* Added license stanza.
	* Refactored the id-field configuration calls to allow for better override methods.
	* Better hsqldb support with the help of the mailing list.

1.5: 4/24/2010 (svn r181)
	* Massive move of source code down into trunk/branch hierarchy.
	* Ton of changes as I add support for Sqlite and Hsqldb.
	* Lot of refactoring to make the BaseDatabaseType more generic.
	* Added logging of arguments to statements by setting the ormlite.log.arguments system property to be true.
	* Added auto-drop for TableCreator and tuned the examples and tests.

1.4: 3/24/2010 (svn r164)
	* Added a couple of examples showing simple usage of the package and usage with Spring.

1.3: 3/18/2010 (svn r156)
	* New factory class and tuned the DAO wiring for better Spring wiring.
	* Return the query string prepared by the query builder for logs or external use.
	* Added better logging of arguments being null replacing NPEs.

1.2: 2/9/2010 (svn r141)
	* Replaced Stack (which extends Vector) with internal stack that uses ArrayList.
	* Allow rows with just GeneratedId fields.

1.1: 2/2/2010 (svn r129)
	* "It's ready"
	* Finally got the deploy to SF to work.	
	* Added deleteIds for deleting a collection of ids.
	* Major revamping of the build statement stuff.
	* Collapsed the StatementBuilder class into each of the mapped statements.  Feels a lot tighter.

------------------------------------------------------------------------------------------------------------------------

0.12: 2/1/2010 (svn r119)
	* Major revamping of the MappedStatement class to pair it down and get a class hierarchy going.

0:11: 2/1/2010 (svn r110)
	* queryForAll(PreparedQuery) should be named query instead since it will not return all.  Bleah.
	* Added delete(Collection) call to the Dao to delete a number of items using SQL IN clause.
	* Added isNull and isNotNull methods to Where.
	* Fixed some query issues with derby and NOT for all but h2.  Added QueryBuilder tests for each db type.

0.10: 1/31/2010 (svn r102)
	* Added PreparedQuery interface to hide MappedStatement.
	* Added updateId and refresh dao methods.

0.9: 1/31/2010 (svn r99)
	* Added better handling of classes with just an id field.
	* Renamed StatementMapper to MappedStatement which is much better.
	* Moved the select args to the statement mapper and got rid of the prepared query.

0.8: 1/27/2010 (svn r85)
	* Lot of javadoc work.

0.7: 1/27/2010 (svn r79)
	* Added prepared statement argument injection and moved that code into PreparedQuery.
	* Renamed BaseDao to Dao since it was an interface.  Duh.
	* Updated the SQL to produce uppercase SQL statements and changed method names from add to append.
	* Major revamping of the query internals with the addition of the QueryBuilder class.
	* Fixed escaping in H2 and MySQL.

0.6: 1/23/2010 (svn r55)
	* Major reorganization after some good feedback from Chris.  I should be dealing with a DataSource.
	* Renamed DatabaseConnection to DatabaseType.
	* Added initial take on queryAll and interator ordering.

0.5: 1/19/2010 (svn r39)
	* Ouch, fixed bad bug with storing of null dates in the database.
	* Fixed postgres primary key id escaping.

0.4: 1/17/2010 (svn r32)
	* Added initial support for the derby database.
	* Fixed problems with ids not being set as primary keys.
	* Added more types to the jdbc list: byte, short, float, double.

0.3: 1/13/2010 (svn r19)
	* Improved the Postgres handling of sequence numbers.
	* Fixed bug with the default value stuff.
	* More extensive postgres tests exposed a bunch of issues with table and column-name escaping.
	* Added the objectsEqual call for testing purposes.

0.2: 1/11/2010 (svn r13)
	* Some class renaming and reorganization.
	* Lots of javadocs.

0.1: 1/10/2010 (svn r8)
	* Starting to look stable-ish.
	* Complete revamping of the query processing.
	* Still fighting a bit with object hierarchy.
	* Fixed a bunch of bugs in the state building escaping of reserved words.

0.0: 1/7/2010 (svn r1)
	* First check-in.
