update macvim
#28 use macro for cancelling
#28 minor refactoring
#28 use factories for workspace and main window controller
#28 minor refactoring