Mostly reworked to work with the new API.  The database backend works if the span isnt wide enought.  The CSV backend should work all the time.  It roughtly works, but it is a bit rough.