refactoring based on Discover Meteor book, up to routing