#70 #69 Implemented basic InputBox

Implemented a basic input box
Draws a white rectangle in the input area
When the user clicks in the rectangle they can enter input which is
drawn within the rectangle
Major work towards GUI and input handling.  Incorporated lambda function support for input actions

Added InputBox class to take text input from the user
Changed InputService to not handle text input while gui has focus
Added lambda function member variables for mouse actions and button
actions
Helped unify gui interface

Worked towards #70

Closes #80
Closes #79
Closes #78
Closes #69
Removed unneeded commands that are easily replaced with lambda functions
Merge pull request #81 from n8ebel/dev-lambdas

Pulls dev-lambdas into dev-gui