Further new features.

Added support for creating changelogs from GitHub (for Spring Data Build project). A lot of internal refactorings, strengthening the domain model. Moved project declarations into Projects class. Made types package protected where possible.

Added dedicated TrainIteration type as well as a Shell Converter implementation to allow this type to be handed into the command implementations.

Unified logging into separate component to make sure we have consistent output.