TODO:
- maintenance: Switch to using inside-out objects (probably Class- or Object- InsideOut)
- maintenance: scripts/clearpress to auto-generate tests & fixture framework
- maintenance: Improve migrations
- maintenance: Improve test coverage (currently at 75%)
- maintenance: Add regression tests
- performance: Config caching
- performance: Template caching

236 - driver support for bounded selects (currently basic string concatenation)

235 - Improved test resiliance w.r.t. optional dependencies

222 - ClearPress::driver is now a Class::Singleton. ** TAKE CARE ** if
      your application makes multiple database handles of the same sort
      - they need separate subclassing and will then be singletons
      themselves.

174 - Maintenance release - added missing dependencies to Makefile.PL

173 - Improved tests & code coverage for relation accessors (has_a,
      has_many, has_a_through, has_many_through etc), views and database
      drivers.

    - NEW BEHAVIOUR: database handling has started to be pushed into
      ClearPress::driver:: subclasses. You will commonly see transaction
      errors with applications built using older ClearPress which
      implement their own 'dbh' methods in util.pm .

    - NEW BEHAVIOUR: better handling of NULL/undef, zero and empty
      string may cause issues on applications which previously didn't
      check.

168 - Updated POD
    - Generation script now makes use of has_a and has_many
      friend-accessor-auto-constructors

157 - Improved error handling with some smarts about requested content
      types
    - 'packagemap' config section maps uri entity names to package
      subclasses for exceptions to the systematic naming rules, e.g.
      [packagemap]
      array_feature=feature::array

135 - belongs_to_through now supported in the data model
    - Added missing Config::IniFiles dependency. Hopefully more CPAN
      tests will now pass

132 - has_many_through and belongs_to now supported.
    - Easier access to template subsystem for streamed-output responses.

118 - Update now only saves fields which 'exist' in the object, meaning
      you don't have to force $object->load() before updating.
    - New hasa() and hasmany() for easier relationship definitions.
    - Models can now render ->as_xml() and as_json()
    - Tweaked route processing (action & aspect) to be safer and more
      consistent

99  - reworked url/file-extension & HTTP Accept header handling
      deprecated controller::process_uri in favour of process_request

87  - JSON response support

71  - Buffered output handling, better test coverage

12  - Added application builder in scripts/clearpress