Moved ApplicationInformation class into Data project so that it is accessable. Also moved it's package to ord.dlect.helper
Added toString method to ImmutableSubject
Improved readability and testability of model classes.
Fixed bug in SemesterTest.
Changed default time-zone ThreadLocalDateFormat to be UTC.
Added support to debug byte streams to a logger.
Incremented version number to 3.1.0-DEV
Changed BlackboardHttpClient API to return an InputStream subclass that provides the URI for this resource.
Cleaned BlackboardHttpClient's default implementation to correctly configure the `User-Agent`, and listen to redirects. Also added another HttpClient to be used with requests that do not need cookies.
Added JSON library to Providers project to allow parsing EchoCenter's API.
Move Blackboard's page parser interface into separate package to allow for multiple independent implementations.
Migrated in-Blackboard lecture item parsing to new plugin mechanism.
Added a lecture parser abstract implementation to allow plugin implementation.
Added an abstract class to create the list of lecture parser plugins.

This sounds complicated; however by constructing independent objects for each run reduces the risk of race conditions and allows objects to cache results without the risk that they will be returned for the next execution.
Added class to contain lectures, streams and the mappings between them. This class also has support for merging two together.
Migrated lecture provider to use new plugin system.
Removed redundant class
Changed provider initiliser to use the short identifier.
Added class to allow for providers to create a default list of streams for a subject.
Changed subject provider to use the short identifier.