started work on searchable "name" objects

- schema for 'name' table with index
- constant for PREFIX search class
- schema for the prefix searching lookup table with index
- function stubs for api.name
fill in name.create() and name.search()
name.list() implementation
name flag CRUD
name.shift()
implement name.remove()

the only name-related thing left to do now is to integrate it into
estate cleanup
add names and their lookups to estate cleanup
switch out straight SHA1 digests for HMACs with a configured key
a start on phonetic searching. create and search are done
also return a token in an early return case
fix searching for multiple lookup_insertion_plans
exception fixes

one of these is in a critical section and could prevent connections from
going back onto the pool (!@#$*%^)
finish phonetic-search names
add the fuzzystrmatch postgres extension