Updates for checking ownership. Not passing tests.
Fix to pass tests: Make sure that we find an apikey before trying to
convert.
Add types and methods for materials commons models.
Unit test and fix up checking if user has access. Function is not
intuitive and needs to be changed.
Change hasAccess function to a different name and signature to make it
more understandable. Update unit tests and add a new unit test for a
user who should not have access.
Add in appending to a file and sending back the
offset to start sending from.
Start reworking code to a state machine.
Centralize decoding. Make state change funcs private.
Cleanup code so that it compiles and passes tests as we refactor the
code into a state machine.
Add mcfs/request
Add in User, and add routine for getting items that removes redundant
code.
Add in login logic to verify apikey.
Update tests and use generic method for model.
Start adding in Stat state.
Complete the Status state.
Add logout handler.
Initial implementation of Send state that doesn't handle any errors.
Change interactions with the data file to a set of variables so that we
can better test sending blocks for a datafile.
Add project and datadir. Add methods to support queries on them. Add
GetRow to allow running an arbitrary query on an object.
Add empty tests for the state machine.