More test cleanup

This PR gets rid of `TimepieceDataTestCase` completely. This is desirable so that each test case will create only the minimal state necessary. It will generally make the test suite cleaner as we continue to improve it.

I moved functionality to the factories where possible, pulled out `LogTimeMixin` for the test cases that still use this method, and created minimal `setUp` methods for each test case that had previously run the `setUp` code from `TimepieceDataTestCase`. (In the case of some time sheet test cases, I copied the whole method since the necessary setup is quite complex.)

Additionally, I changed `factory.create()` to just `factory()`, as they are synonymous.