Added ArmorResource, ItemResource and ResourceItem for implementing item types as game resources (optionally)
Have ArmorItem extend ResourceItem<ArmorResource, ArmorItem>
Add baseball_cap.armor game resource and give it to players on joining for testing
Add checks to ensure Resource is not null, throw an exception if unable to find a game resource with an id when deserializing items
Added AmmoResource and updated AmmoItem to use it, clean up ItemResource
Give ammo by finding an appropriate AmmoResource
Add 5.56 Ammo, 9mm Ammo and Bolt game resources