Added validations to init.pp, fixed some tests.

- I introduced validations to init.pp so we can ensure people don't put strange stuff in class params.
- I had to fix some tests for this.
- I did not find the time to add testing for the version argument, which is missing anyway...