Restructure code for construction of buildings and flags.

Move most of the code that is not associated with user interface to game.c. This splits off most the functions player_build_flag() and build_building() into game_build_flag() and game_build_building() respectively.
Allow removal of flags on roads (fixes #29).