Added plot build height functionality.

Main feature added is the ability to set build heights for plots. This works by each plot having a base and a build height. By default the base is 0 and the build height is 256 for each plot meaning that normal functionality as before this feature was added should not be affected.

Additional commands have been added to accommodate this new feature:
- /plotme setheight - Sets the buildable height from the base of the plot your currently on.
- /plotme addheight - Adds to the buildable height from the base of the plot your currently on.
- /plotme subheight - Subtracts from the buildable height from the base of the plot your currently on.
- /plotme setbase - Sets the lowest level that can be built on of the plot your currently on.

In the process of this update, I made a lot of formatting changes and minor code optimisations.

I also made some changes to make the optional dependencies more stable.

Please see the build on my CI: http://ci.flungo.me/job/PlotMe-Core/

Testing is required for MySQL, and for upgrading an old database (both MySQL and SQLite but should work as I did add the code for such events)