Port the database interaction to python-sqlalchemy

This way we can handle multiple types of database system, MySQL,
PostgreSQL and even sqlite for testing.
Add four templates corresponding to the four different pages generated
Adjust the generateindex to use the templates and generate all pages directly
Remove genpage.py as we now rely on templates
Remove kernelresult.py as we generate all the page statically
Remove the sql script to create the database as sqlalchemy can do it for us
Rename generateindex into generate_reports
Change back the testdate into a String field as intended by the original author
Check that `output` is a directory as well
Make the submit_test.py a command line program
Fix the dbtools to actually be valid python
Add .gitignore file
Rename dbconfig into default_config
Simplify the configuration
Rename the submit_test file into an app file
Fix closing the for loop in the master template
Fix the Enum column in the database model
Configure the directory where the logs are kept in the configuration file
Transform this application into a small flask application
Add the utility createdb script