Removed a bunch of smart pointers from the code to reduce overhead.
Added an explosion system. Implementation follows.