GUI: Add more wrappers

Added classed CListBox, CTextBox, and
IGUIElement::getText()
GUI: Add Console stub

Currently this is a console window with no possibility to hide or resize
it and no command parser (it returns 'No such command: %s').

I am doing this comit only because this code is utterly bad. Such things
should be recorded.
Update VC projects
Core: Add hrengin Shell stub

Currently there is no way to register commands.
Core: Rewrite logger

Replaced threaded output into system console with more flexible array of
'Log books', which can be anything, as long as they can accept logger
messages.
Moved logger from `game` to `core`.
GUI: Clean up ConsoleGUI

Added few methods to wrap access to Irrlicht's gui elements (well, look at
the previous mess), added proper HrenginShell integration.
InputManager: Added more GUI event types.
Update VC projects
Common: Fix recently added boost headers
HDF: Update type check for recently updated Vector2d class