New user dbase search

This is the updated Usermodel and database work - including docs, tests.  
It is a lot of the code that is on fillet, plus improvments, plus Michaels commits.

Due to error between chair and keyboard, I have bankrupted the original "betterNameSearch" branch and just created a new one off HEAD master and applied as a set of patches.

As such it works, but the history you might expect to see will have gone - think of it as rebaseing.  I am treating a public branch here as rebase-fair-game.  We might want to discuss this but afaik no-one is relying on those brnaches

@pumazi - shout if this does actually affect you please