Finished off the inventory and cleaned up some of the unnecessary hard coding.

Items now have flags and pockets. Inventory can now return items in a list of pocket. Items now order by name in inventory. Items can now be used with a target. Each item is also associated with its inventory.

Implemented target for item usage and re-usable for selecting Pokemon/Trainers/NPCs. Although trainers and NPCs need to separate their Unity object from their internal one, which will also resolve a few warnings.

Renamed Target BattleTarget as it's only used for combat.