Handle POST to /data/fs/[path]

Each line of the body is submitted to MongoDB as a "save" (which is effectively update/insert).

Given the MongoDB model, this actually supports creating a new collection, saving new documents to an existing collection, and updating existing documents (see the README).

All lines are parsed before any data is saved, so nothing is changed if the input is bad. However, partial writes can occur if the MongoDB driver gives an error.

Also added a command `save [path] [object]` to the REPL, and made the `ls` and `cd` commands actually work, for the most part.
The semantics of HTTP POST cannot be MongoDB specific. In particular, by common convention of most REST APIs, POST should create a new resource, and PUT should replace an existing one. PUT is idempotent, while POST is not.

(One can argue that we should use PATCH and not POST for appending, and I'd buy that although some clients cannot easily support PATCH.)

The primary method of interest to SlamData will be PUT, since it will allow updating of "files" designed to store notebooks or associated metadata.

Of course, it will be hard to get around the weird semantics associated with top-level fields named `_id`, but at the very least we should not document this feature as a way to "update" existing collections, since that's MongoDB specific and violates common conventions associated with HTTP PUT.

Btw, it occurs to me the ticket is to only implement POST, but I think we should also do PUT since it will be used more frequently by the front-end than POST.