Added Shield class and updated Wieldable interface

Updated the Wieldable interface to have all the relevent properties and
operations of both Weapon and Shield to ease use
Added implementations of missing methods to Weapon and Shield
Updated UML