Create singletons to stop passing handles around.

  We are currently passing around Redis handles, which complicates
 things unncessarily.  Rather than do that in the future use a
 singleton to hold the value.

  Code "stolen" from YAWNS - which I wrote :)
  Avoid creating a Redis object.

  Although it isn't used yet we have singletons now, so we
 don't need to create/pass in a Redis handle.

  This simplifies utility-usage.
  Moved include files into their own directory.

  This makes more sense than leaving them in the top-level.
  We require DBI now.
  We now use the singletons.

  We instantiate the singletons on-demand, and we've removed the
 use of the "`pimp`" tag in the templates - since this will not
 be commercial now.
  Valid page.

  Also set the record-name in the edit function, since a user
 might have more than one record..
  Removed mention of the pimp-tag.

  Since we're not commercial now.
  Use "$_h" for consistency with the other singleton.

  (`_h` standing for `_handle`, obviously.)
  Removed commercial/extra-features link.

 Since this won't happen now.  http://dhcp-api.com/ will be the thing.
  Use the Singleton Redis instance.

  We no longer need the object passed in the constructor.
perltidy
  Quick and dirty port to SQLite.

  This seems functional, and the cut-down user-test succeeds.

  Might need more changes though.
  Utility script to migrate to SQLite.
  Reworked to allow multiple records.

  This is a major change that needs additional testing.
  Updated to cope with the new data-structure(s).

  Specifically we no longer fetch a single record/token, instead
 we fetch all parts of the zone..
  Updated to add the new rewrite rules.

  Since deletion/editing now applys to an arbitrary record we
 have to specify them.
  Removed "register interest" template.

  Since this is no longer emailed we don't need to keep it.
  Removed support for templates.local
Merge pull request #7 from skx/sqlite

Migrate to relational storage