use bracket syntax for all identifier; add a 404 template and test

This is a fix for #22.