Implement better Command system + a better testing environment

**The Issue**
I feel the true power of Nexus lies in it's Command system. While the current command-system is very powerfull and quite handy, I feel we can push the limits even further and create an even better, neater and sexier one. This is what this PR tries to start with. No changes have been made to the original command-framework, the new framework is located in com.dsh105.nexus.command2. 

**Justification for this PR:**
The new command-framework allows one to have multiple commands in multiple methods in 1 class. This can be quite handy when you have some smaller commands, or even  have a few bigger ones that depend on eachother. This PR introduces the basic usage of the new Command-framework, the framework itself and a (not yet) "better" testing environment.

**PR Breakdown**
The PR adds 3 new things:
1: A new Command framework
2: The start-code of a basic Permission system
3: Some code which aims to provide a better testing environment using Mockito

**Relevant PR(s) and Issue(s)**
No issues or any other relevant information. But I do have Cake, so: :cake: