Refactored ReportReader (retrieveReports and checkDataFilesAvailability) and solved some Checkstyle issues

ReportReader:
- Removed an unnecessary conversion from date to string to date from the retrieveReports method.
- Used the Joda-Time Interval class to check if the last modification date is between the from and till dates in the retrieveReports method.
- Split the new determineErrorMessage method off from the checkDataFilesAvailability method.
- Replaced ArrayList by List where possible.
- Created the logDirectoryName and logFileName methods to avoid a bit of code duplication.
- Fixed several other Checkstyle issues by adding Javadocs, replacing tab characters by four spaces, making variables final, etc.

Constants:
- Added the METRICS_JSON_FILE_NAME, TIC_MATRIX_FILE_NAME_SUFFIX and SECONDS_PER_MINUTE constants.
- Added the CANCEL_BUTTON_TEXT and four DIMENSION_[n]X[m] constants.
- Removed many TODO items that were fixed by Pravin!

pom.xml:
- Added the Joda-Time library for convenient date/time handling.