Battle Items, JPokemonDialog refactor

Player adds it's Bag to JSON when in Battle state
Bag sends a more readable JSON
Items don't send type because it's redundant, and also not value
Items are shown based on their picture
ImageService finds items using the correct path
PlayerService no longer sends "player" with basic info
GameWindow no longer tries to read "player" basic info
BattleView holds all of its related JOptionPane helper methods
DialogCancelException was refactored out