Adding a non-protobuf allocate_ids method on Dataset.

Partially address #336.
Isn't `result` supposed to be a list of keys, each populated with an ID, rather than the IDs themselves?