Switch to jnrbase

This is partly to remove a heap of code duplication, and partly to allow me to use the same code base for the public release as our private tree.  It should push me to start working on the public tree again, or so I hope.