makefile: replace hard-coded list of files
makefile: add `clean` target
makefile: determine release version via semver
makefile: simplify JavaScript file generation
makefile: tweak redirection formatting