Make tests automatically discoverable
Improve code separation to be able to write commands tests
WIP regroup entries
Fix usage of undefined options in commands
Allow to define a custom output stream for the UI
Split timesheet tests into multiple files
Merge branch 'master' into regroup_entries

Conflicts:
	taxi/commands.py
Add regroup tests
Fix Timesheet.add_entry()

The function raised an IndexError exception if it was called on a timesheet
with a date but no entry in it.
Don't add trailing empty lines when using Timesheet.add_entry()
Add tests for the 'start' command
PEP-8
Simplify the way we deal with config/entries files in tests
Make the 'alias' command independent of the projects db

Also add some tests for the 'alias' command.
Use setup.py test to run tests
exclude tests from build
initialize default config in the setUp for CommandTestCase classes
ignore files generated by tests
PEP-8
Add docs on how to run the tests