Test cases for multiples of each Screen-Plate-Well level
Normalise PlateAcquisition name and format

Name changes in marshaled data:
 * plateAcquisitionsCount --> plateAcquisitionCount
 * plateacquisitions --> plateAcquisitions
Use similar logic to previous implementation
Fix whitespace
Fix documentation column order
Start work marshalling Projects
Allow for Projects with no children and copy sort semantics

The current implementation of `listContainerHierarchy()` performs a
case-insensitive sort of object names such that the order is (using the
test case fixture values as an example):
 * Apple
 * atom
 * bat
 * Butter

not:
 * Apple
 * Butter
 * atom
 * bat
Allow for Projects and Datasets along with proper sort semantics
Support an experimenter_id of None
Add tests for an experimenter_id of None
Marshaling screens
Some style tweaks
Fix and add test case for empty Screens
Add test for marshalling Screens and Plates with correct sorting
Add tests for an experimenter_id of None
Port marshal_datasets() to new experimenter_id structure

Added tests for an experimenter_id of None, refactored
marshal_datasets() into new structure and added proper sorting
semantics.
Port marshal_plates() to new experimenter_id structure

Added tests for an experimenter_id of None, refactored
marshal_plates() into new structure and added proper sorting
semantics.
Add tests for an experimenter_id of None
Remove soon to be unused methods and associated test cases
Remove debugging