Fix #132, incorrect highlighting with long block comments

Make the syntax engine parse the whole file before making decisions. This means
it's guaranteed to find the start of a block comment. The javascript syntax does
the same thing, so why not