Merge pull request #505 from fread2281/master

Cleanup: hlint, cabal files and MonadBase
Style only

Conflicts:
	yi/src/library/Yi/Buffer/Misc.hs
Prompt the user for a comment string when missing.

Just like in emacs, we let the user pick a string to use for comments if
the mode doesn't already define one. We remember this choice by
modifying the current mode for the buffer on the fly with the comment
syntax the user picked. This change is buffer-local and doesn't affect
any other buffers: we don't want to force the comment string in every
other buffer just because it happened to be using the same mode.

Unfortunately due to suddenly needing the YiM type and a few buffer
functions in scope in Yi.Buffer.Misc, there are quite a lot of boot file
changes but it's either this or having to create a new module in a
rather odd place with no real purpose.

Fixes #413.

Conflicts:
	yi/src/library/Yi/Keymap/Emacs.hs
Update missed withModeB call to withModeY
Remove abandoned Cocoa UI.
Merge pull request #511 from ethercrow/remove-cocoa-ui

Remove abandoned Cocoa UI.
Remove README mentions of Cocoa that #511 missed
Accept unspaced comment syntax for de-toggle
Define comment syntax for Python
Remove cocoa mentions from Makefile and example configs.
Remember a comma. Pfft.
…and order the record properly
Use operators defined in Yi.Keymap.Keys more
Don't use StandaloneDeriving in Yi.Buffer.Basic