Add option to import zip files to database.

These zip files can be used for compile, run, and compile
scripts/programs. Zip file must contain an executable file named 'build'
which is called prior to execution (once). Either another executable
file named 'run' already exists or it has to be created by running
'build'.
Add relation for new executable table.
Add API endpoint to download executable zip files.
Fetch compile scripts/programs from DB.

As a proof-of-concept, if a special compile script is specified, the
corresponding zip file is fetched from database and cached for further
use (only updated when md5sum changes).
Fix downloading of executables.
Add unit to the display of executable size.
Add page to view contents of zip file.
Uniformize/cleanup SQL and add upgrade snippet.
Make an exception for the floating point checker executable.
Make executable API endpoint work again.
Move boolfind compare script into default data.
Add dropdown select field for special compare scripts.
Add check for special compare executable to checkconfig.
Move executable link from menu to overview.
Add export/edit/save links to executable overview.
Add links from executable to problem and vice versa.
Outline function to fetch executables.
Compile scripts are now also in the database.
Make compile script editable via web interface.
Import existing compile scripts into database.