Refactor DataCollection so that it doesn't directly extend List.
Clean up documentation, method names, etc. for DataCollection.
Refactor DataRecord to provide a separate list of entries, rather than
extending List itself.
Added API docs to DataEntry interface.

Added equals and hashCode methods to DataRecord, to help with testing.