Implemented the explosion factory pattern.

TODO:
test explosion factory
... the other stuff