Adds global variables, json parsing, and ground-work for character builder/loader

I don't agree with that. I can make the change so it's consistent, but it's quite redundant.
For instance, if we have "Player player;" we've declared the variable "player" as type "Player". So we could essentially do:
Player player;
player.player_show(screen);

The looking at the above code function, you already know it's player-bound because it's part of the Player object. So "player.show(screen);" seems a lot less redundant to me.

A method within an object should execute on that object. For instance "player.show()" is saying, this object should show. "player.player_show()". I believe this the same with variables within an object. a Player object shouldn't need a "player_x", it should only need "x". "x" can only be access by referencing "player", so we already know where it belongs. I hope this makes sense.

I'll look around this commit, and make the change and re-submit a pull request.