Merging Commander NewMissionControl branch into trunk.
Removed all references to old Logger class.

Added cutelogger library and setup some simple logging in Mission_Control for testing.
Added a empty LOG_TRACE() to every function.

Added a LOG_INFO() to onEntry and onExit functions for all mission states.
Some partial code is in place for SettingsLoader. It is not working yet.
CuteLogger.pro renamed to cutelogger.pro, Windows did not care, Linux did
SettingsLoader now functions. There is no error checking yet. The only setting that is used right now is gateRefreshLogic. This is used in gate/gate_gatestate.cpp to determine how long to wait before calling execute(). Right now execute() just emits missionComplete(), in the future it will be the main logic in the state so this variable would be used to adjust how often the main logic loop gets executed for this mission state. For not it is just a test, create a file named settings.txt and place it in your build directory with the line gatRefreshLogic=1000 or whatever integer you would like.
Started prepping for adding server to VisionInterface and client to Vision component. Also the constructor for VisionInterface no longer takes an int argument to specify a port. This will come from the SettingsLoader soon to be finished.
Had to set cute logger to compile as static for OS X to find it.
Added #include <Logger.h> to all mission states instead of relying on their base classes header file for inclusion. This is recommended in Googles C++ Style guide.

Added error checking in SettingsLoader, if you try to get the value of a setting that does not exist it is logged as an error and either 0 or and empty string is returned.
Added Mission_Control/settings/settings.txt as a baseline settings file. All of the settings in the file are not yet being read in the program.

I added error checking to SettingsLoader and modified it so the file can contain blank lines.

Ticket #6
Modified SettingsLoader to read from a default resource file and a custom settings.txt. It will use the setting in settings.txt if it is found, if not it will use the setting from the default resource file. It is still a WIP. It does not currently validate the type, if the type is incorrect it will return 0 as the value for int and double.
Completed/Fixed the loading of the default settings file if a custom one is not found. This is in reference to ticket #6.
Commit I forgot to push last night. SettingsLoader loads default settings file in its constructor, if a setting is found in the custom settings file that setting is returned, if not the setting from the default file is returned. Ticket #6, still need to add type checking.
Fixed bug in SettingsLoader that would cause a crash if the default settings file had an empty line. The custom setting file is being represented as a QTextStream, the default file was being handled as a QFile. There is some behavior difference in a QFile and a QTextStream with regards to isEmpty() I did not know about. A blank like will cause isEmpty to return true for a QTextStream, it will return false for a QFile. I was testing for a blank line, if the line was not blank and did not begin with a # I was splitting it into a QStringList as the key/value pair. When the QFile tested as no blank, but it was empty the splitting of the QString representing that line by an = sign was failing, so the subsequent call to the first two indexes of that QStringList were essentially over running the index of an array.

All part of ticket #6
SettingsLoader constructor not takes two QStringStream parameters, representing a default settings file and a custom settings file.

See post 46 & 47 on Loading Settings from a File under Messages on Unfuddle.
Created private function to load a QHash with settings data from a QTextStream since this is done once for the custom settings stream and once for the default settings stream.

Ticket #6
Updated DoxyFile and removed UML document since it is now essentially part of the Doxygen documentation now.
Added Q_UNUSED() calls for all unused function arguments. Also, added
error message to CommunicationInterface's callFailure function.

Ticket #17.
Added comments to settingsloader.h
Made several changes, one large commit due to lack of internet connection.

1) Renamed custom settings file to custom_settings.txt. It was too confusing having two text files named settings.txt opened during testing.

2) As soon as Logger starts several blank lines are printed then the text "Starting Execution". This helps identify the start of a new run in a log that already has data in it.

3) The default settings resource file now has more settings in it, all of the settings currently in it are being utilized in the program. The settings names are now following the same convention as local variables.

4) SettingsLoader class now has member variables named IAW our coding style guide. 

5) SettingsLoader now has two private functions, isInt(QString) and isDouble(QString). These return a bool that is true if the QString can be converted to the value. This keeps the getAsInt() and getAsDouble() logic a little cleaner.

6)SettingsLoader now sends a LOG_FATAL if a default setting is not found or if a type is invalid.

7) All log messages coming from SettingsLoader now reference the key that was passed.

8) CommunicationInterface constructor no longer takes a port argument. Instead the port is loaded from as a setting.

9) Modified a few other variable names throughout the project to conform with the coding style guide.

10) KillState now uses the same check_kill_switch_timer setting that RunState uses

11) All sub-mission states now pass *parent to their base classes constructor

12) VisionInterface now loads its client and server ports from a settings file

Ticket #6 #14 #18