hdf5 rework

rebase of https://github.com/twdb/hydropick/pull/59 off of https://github.com/twdb/hydropick/pull/69

Allows multiple concurrent users/application instances without corrupting data. Adds a new dependency: lockfile

Also saves pick lines from the GUI.