Improved EntityProjectileBase

Created an abstract function which is called whenever the projectile
hits something. This makes it easier to further develop child classes
that do other awesome things, such as teleport the player, etc.