Switched to thread-safe data structures

It seems a race condition persists, so I'm falling back to thread-safe data structures where there is concurrent behaviour.
Cleaning up and sorting our build issues

You can now issue a 'mvm clean package' to create a nice distributable Jar with all dependencies bundled.