More generic BattleScene; multiplayer progress

Load trainer properties from JSON files and use in BattleModel,
BattleScene. Keep track of BattleModel in Model class and move subScenes
to BattleModel class so BattleOpponent instance can be set and flee
confirm popup behavior can be updated before BattleScene is swapped in.
Replaced hardcoded values for opponent in BattleScene and
SummonAnimation with values from BattleOpponent instance. Added
trainers/red.json for NPC in world map. Added monsters/rock2.json.
Created BattleOpponent class to abstract NPC battles and multiplayer
battles. Transfer player name and party when connecting over network and
verify that peer is a Celdroids service in ConnectStatusPopupModel.
Display Okay button in AwaitingClientScene if connection fails. Fixed
NioSession.BufferedPacketWriter writing in little endian instead of the
expected big endian.