added razor engine, and refactoring