Mixin block problems

This fixes two problems with mixin blocks.  The first is for mixins at the end of files where a file like:

```jade
mixin slide
  section.slide
    block
```

would result in a spurious `<k></k>` tag at the end of the mixin because the lexer failed to eat the last character of `block`.  This could be "fixed" by adding a newline at the end of the file.

The second problem was that a mixin block followed by many blank lines would eat all the blank lines.  This did not result in any errors in the output, but did mean that `lineno` wasn't correctly updated in the lexer, leading to incorrect line numbers in error reports.  If a mixin was followed by a significant number of new lines, this would make it **much** harder to track down otherwise simple bugs.


If there are no objections, I'd like to get this merged quickly as it fixes one or our longest standing "known errors" as well as a minor annoyance for debugging.