Storage module improvement

This pull request carries some improvements to the storage module:

* Declare separate storage classes according to the storage protocol being used
* MySQL storage module now interfaces correctly: it changes base inheritance class at runtime according to the driver being used (*pymysql* or *mysql.connector*)
* Added contextmanager query method: implements #240
* Added PostgreSQL support
* Added tests for postgresql support and make travis work with postgresql
* Some visual enhancements to the README.md file

It also carries a change to 2 plugin classes: make them use EVT_CLIENT_AUTH which is globally defined. It's a small enough change to be carried in this pull request.