Fixed parsing of an HTML tag as the first thing inside a <script>.

Hi!

When a `<script>` contains something that looks like markup as the first token, the `<` is not included in `element.raw` and `element.data`. This causes problems when parsing templates that use the `type='text/html'` hack, for example:

```
<html>
<body>
    <script type='text/html'><div></div></script>
</body>
</html>
```

... which makes the `Text` element come out as `div></div>`.

The above is also included as a test case.

I ran into this issue with jsdom, which still uses htmlparser 1.x.