Cleaned up logging

Default log locations are now based upon the current operating system defaults. The core logger is also now handled through a class called LogHandler that allows for modifications to the log levels and logfile locations throughout the applications life. This will allow for debugging to be turned on when non-critical issues appear without having to close the application and possibly lose the error state.