gradleization
Created eclipse coding convention
fix native loading
force every file to follow new convention
update gitignore and remove files
refactor main package
refactor data package
refactor editor package
refactored notifcation package
refactored overlay package
refactor utilities package
remove unused code in main package
remove unused code in utilities package
remove unused code in overlay package
refactor Preferences

Encapsulated path Locations in to a Locations class and Operating System
specific information in to an OperatingSystem enum.

The enum includes path info specific to each OS that the Locations class
uses to build up the correct paths.

Preferences has been refactored to make use of the Locations class.

Additionally, the version is now only maintained in the build.gradle
file. It is built in to the jar's MANIFEST.MF with the key
'Application-Version'. This is grabbed at runtime to determine the
version. Of course, when ran through an IDE there is no MANIFEST.MF file
so the version defaults to "Debug".

Because of these changes, the build is currently broken until the
Updater is fixed and handling settings in the developer case is handled.
remove unnecessary static qualifiers
started refactoring versioning/update checker
add version output tests and fix changelog output
Began version checking by creating a downloader

+ Started version/updater
+ Added version package to utilities package
+ Created URLDownloader with matching DownlaodResponseListener used for
easily asynchronously downloading a String.
+ Created convenience static method for doing a blocking download of a
string.
implemented version checker

+ Version now has a static .fromJson method to parse json in to a
Version object
* Moved getVersion from Preferences to Version and renamed it to
getCurrentRunningVersion