Adding tests

Lots of improvements:
- added a test runner
- added tests
- configuration docs in a template file
- initial support for non remote drivers