lots of refactoring. should probably be doing building rather than infastrucrue
build read handler for calendar