Add index.js

Index.js manages a cluster composed of a single child process
and respawns such child process when it crashes.

While there, remove the trailing '.js' from frontend.js imports
and remove unused imports.
Add run.sh script

This script runs the nodejs application and saves the logs
into a logfile located inside studenti/.
Listen on port 4443
utils.js: repair print-headers functionality
backend: fix regexps for token
backend: fix regexp-does-not-match case
token, matricola => Token, Matricola
backend signup: more debug messages
utils: fix {read,write}FileSync wrappers

In the previous implementation, if the callback failed, the
catch branch was taken and the callback was invoked twice.

Now the callback is not invoked twice in case of error.

While there, add a couple of cosmetic changes.
backend: declare missing variable
hash => Hash

While there, also move the declaration of a variable and make
sure that a logging message is consistent.
mailer: tweak the message we send
Merge branch 'fixes'