inheritance bugs:

- redoInh needs to send out change notifications

- csubdset needs to change inheritance for new subdataset

other bugs:
- doesn't show "" entry

- try renaming an entry over a deleted entry

- strange ghost entries come & go (with inheritance)

---------

for backing store:

- change the dataset tree into a hash table

--------
stuff:

- createEntry should mirror storeEntry's exception handling

- canDo should do more sophisticated processing

---------

design:

- parser/lex (ml-yacc, ml-lex)

- central dispatcher

- i/o thread (threads, really) for each connection

- worker threads for each search (is this done?), communicate via
  mailboxes to i/o thread. threads for each context

-------------
BUGS/MISFEATURES:

- currently don't deal with datasets that get created in open contexts

- no atomic STOREs
	this is hard without a true database backend
	i think this should probably be dropped from the spec

- no multiple paths to dataset

- no support for DELETEDSINCE (technically conforming)
	should be easier once a backing store is added

- no substring matching

- no backing store

- no synchronized literals

- nonsynch literals are broken???

- use sml library where possible (queues, sorting)

- replace lists with faster data structure

- referrals 
	REFER intermediate response (hard)

- no quotas

- connections dropped while output is pending don't seem to be cleaned 
  up correctly

- contexts on contexts?

- context MODTIME responses not sent at the right time?

- possibly allows a single client to consume unlimited memory by doing
  sends but never recvs

-------------
PROTOCOL BUGS:

- what happens if we rename an entry on top of an existing one?
	currently, returns NO

- UPDATECONTEXT missing from grammar

- LISTRIGHTS wrong in grammar

- strings allow arbitrary 8 bit data during authenticate, too
