Toggle quotes correctly for multiline strings

This pull request enables string quote toggling for multiline strings, and fixes it to work properly with "block strings" / "heredocs" - those starging with `"""` or `'''`.

This fixes #5.

I tried to make it as readable as possible, but sorry for the huge diff. There are tests covering all the cases I can think of.

Toggling works for all these CoffeeScript strings (and multiline / heredoc strings in other languages):

```coffee-script
"

asdfasdf



"

"""
asdfasdfa
"""


"""
'hi!'

'''adam'''
"""

""""""

"'hi'"

console.log('''
''')

console.log("""




""")

```