Hey man, I've been building single page apps for a few years...I also tried the "roll your own" and depending on the situation it can work, but long-term I would high recommend using an open source project that has a strong community.
Take Chaplin for example..it accomplishes everything you did but comes ready out of the box. I would definitely look at the source code of Chaplin - it really helped me understand the single page app lifecycle and how to correctly dispose of objects and events.
Best of luck!