Changed explosion implementation

Changed explosion implementation
Refactored classes