add 404 and 500 error page; add simple test cases