added simple routing functionality to the framework and used it to produce clean urls