#398 Abstraction for weapons added

There are a several classes that controls the weapons objects that
appears on the game.