Menus more or less working

The things I have done:
* Made Game.take_menu_input() a static method
* Updated load_yaml.load_menu() so it returns a list of buttons instead
of a dict of all encountered objects.
* Added a run_menu() function that handles and runs any menu defined in
a YAML-file.
* Added a module for button callbacks to be used in the menus.
* Added YAML-files for two different menus - a main menu and an
"About"-menu.

The things that need to be fixed:
* Text boxes doesn't support newlines, this must be fixed. I think one
way of fixing this could be to split the incoming text with
string.split('\n'), create a surface for each line, calculate the
surfaces' relative position using the font size,  blit them all to a
"Master surface" and then use that surface as the text object used by
the TextBox object.
* The font, font size, text color, background color etc must be editable
for all derivatives of BaseMenuItems.
* Change the name of MenuItem back to Button?
* Most likely more things that I can't remember right now.