implemented 404 and 500 error pages, closes #43