Adds the ability to override the DataInterface defined in the
BattlegroundCore. Also some cleanup.