[Async DB] Documentation/minor tweaks

I'm adding documentation, making minor tweaks as I'm reading through the code. Some of the changes are likely unnecessary/incorrect as I may be overlooking some finer aspects of the new code.

Let me know if I should continue with this or not.

I just started, so I plan to push more as I go through the code (planning to get through all the data code this weekend). I try to make sure nothing breaks, but I also haven't tested this code yet.

(I see you addressed the comments I made, so I'll have to rebase this anyway)
yes, but then we should throw if nothing is passed. Otherwise, if `!this._identified`, the function call would actually complete without error, but with some weird results. (it would call `this._requireData('primaryData')` and then set `this._loaded[undefined] = true`, which is oddly valid)