Added support to interpret relative root directory path like:
../ProteomicsQCPipeline/Reports 
using .toAbsolutePath().normalize().
Merge pull request #25 from FreekDB/master

DataEntryForm: small cleanup
Manual merge of DataEntryForm.java (@Freek: kindly let me know in case
of inconsistencies with your branch)
Edited TODOs in Main.java and ReportReader.java
Merge branch 'master' of https://github.com/CTMM-TraIT/trait_proteomics_qc_tool.git
Merge pull request #26 from FreekDB/master

DataEntryForm: refactored displayInitialDialog method
Merge remote-tracking branch 'upstream/master'
Merge pull request #27 from FreekDB/master

DataEntryForm: refactored displayNoReportsFoundDialogue method; other small changes
ProgressLogFile.java:
Refactored setProgressLogFile into two parts: 
public boolean setProgressLogFile(...): @return true if logFile exists,
false if logFile doesn't exist. 
public void startProgressLogFileMonitor(): Create a timer and run the
timer thread as daemon to monitor progress log file.

ReportReader.java: 
Changed return type of retrieveReports(...) from List<ReportUnit> to
HashMap<String, ReportUnit>.
retrieveReports(...) now requires two more arguments: 
runningMsrunName to skip corresponding report (since pipeline is
processing RAW file with name runningMsrunName). 
reportUnitsKeys to skip creating reports already displayed in the
viewer.

Main.java: 
Removed processInitialReports() method.
Removed reportUnitsTable hashmap. 
Added reportUnitsKeys list to maintain list of reports being displayed. 
Log file is monitored only if it exists.
getReportUnits(...) now requires one more argument: runningMsrunName.
To continue working on Main.java. 

ReportUnit.java: 
Removed setReportNum(...) method. 

ViewerFrame.java: 
Added TODO to display report units according to their report number. 

ReportReaderTest.java: 
Updated unit tests.
Merge remote-tracking branch 'upstream/master'
DataEntryForm:
- Added TODO: can we use JDialog instead of JFrame (that way we can set the owner to the viewer frame)?
- Added TODO: "extending JDialog is as bad as extending JFrame" see http://stackoverflow.com/questions/15429653/how-to-set-the-jframe-as-a-parent-to-the-jdialog
- Use current values for date filter dialog.
- Refactored the displayDateFilterEntryForm method, splitting off the createDateChooser, createDatePane, createButtonPanel and showErrorMessage methods; fixing several Checkstyle issues and improving naming & readability.
- Refactored the displayRootDirectoryChooser method to fix several Checkstyle issues.
- Created the DATE_LABEL_WIDTH and DATE_LABEL_HEIGHT constants.

Main:
- Added the getFromDate and getTillDate methods to enable initialization of the date filter dialog.
- To optimize feedback to the user in the runReportViewer method, call the dataEntryForm.displayInitialDialog method as early as possible and call the dataEntryForm.disposeInitialDialog method as late as possible.
- Changed the parameter type of the updateReportViewer method from Boolean to boolean.

Constants:
- Added DIMENSION_0X5 constant.