Abstracting backend

Features added:
* Abstract class backend with documentation
* Backend classes for myria, clang, grappa 
* Separating out clang connection and clang catalog
* Moving myria multiway join as an option in drop down backend list
* Factoring out myriaconnection template variable to connection
* Make connection string, project site for backend dynamic
* Include dropdown list in queries page, change table dynamically
* Skipping query test on myria_up now that pages are loaded dynamically in js
* Clarify README in clang server to set up server and insert basic datasets
* Updating clang server to support the features above
again, all this can probably be extracted, including the if check on ssl