Improve logging.

- Logging now separated into four "levels": verbose, information,
warning and error.
- Running tests now shows no undesirable logging on the screen.
- Improved certain error messages.