a lot of refacoring to accomodate input modes

still very much in flux, but compiles and runs.

*fixed a copy&paste error in set_translation
*made render const for tile_sheet
*added level
*added view
*added input modes
*temporarily changed player placement code and walkability to facilitate
testing while refactoring