updates and additions

Hey, these are some changes I made to get it working w/ node 0.8.12. I also added save and restore cursor, fixed a bug in quit and started breaking the widgets out into their own dir/files.