Just a few changes (and only the ones I remember):

1: Added ports.  They seem to work fine.

2: Added a function to limit user input to only things that the program will understand.

3: Added some features to help debug "graphics".  (There are a few issues, especially with buildings_dict

4: Added a feature to be able to fix any errors in-game.