added pushable walls

And factored pushing entities.