1. Added parrallel support
2. Moved classes around to better namespaces.
Disabled parrallel execution as it does not work accordingly.