Herein, we do two things:
1- implement a custom handler for the virtual filesystem that,
rather than returning a simple (and ugly) 404 page, redirects
the client back to the root URL with the `customUrl` query
parameter filled out with the value of the request path.
2- In home.js, if the `customUrl` param is filled out, automatically
select the `custom` state setting, and pre-fill out the CustomID
input field with the value of that param.
In short, the server will never again return a 404 error, but instead
will gracefully prompt the user to fill in the missing link.
* Reworked project layout
* adjusted Makefile for new folder structure
* fixed path errors
* Fixed test import paths
* fixes
* only pushing image to the docker hub if the branch is master