Separated the code that renders comments as text in debug mode into its own branch.
Added missing return type to SpanStyles.primaryColor getter.
Added getter for current primary alpha to SpanStyles.
Changed Drawing to an accumulator of DrawingStyles.

This fixes the following:
- Declaring \pbo before \p1 used to have no effect, but now it does.
- Multiple DrawingInstructions parts used to cause an error instead of being treated as separate drawings.
Use pre-computed array for transform origins.
Fixed typo - rotationZ defaults to 0, not null
Added missing space in SVG filter text.
Implemented support for \be

Fixes #3
Added clocks and a WebRenderer that's less magical than DefaultRenderer.

- Clocks are now used to trigger play, pause and timeUpdate events for renderers. There is a VideoClock that feeds off a <video> (what NullRenderer used to do) and a ManualClock that allows user script to send events (such as a player not backed by a <video>)
- NullRenderer now takes a Clock and uses its events to determine what dialogues to pre-render and draw.
- WebRenderer is a new renderer that's halfway between NullRenderer and DefaultRenderer. It takes in a <div> to render to, the libjass subs wrapper, but it is not tied to an actual <video> element. It is most of the old DefaultRenderer code except the bits that were specific to a wrapped <video>.
- DefaultRenderer now inherits from WebRenderer. It specializes WebRenderer as a renderer that wraps a <video>, just like it used to before. That is, it sets the clock to a VideoClock backed by a <video>, and makes the libjass subs wrapper wrap the <video>.
Fixed typo in JSDoc.
Use CSS to set alignment-specific text-align values.
line-height gets inherited by children already.
Updated TypeScript to v1.0.1
Use SPDX identifier for license.
Begin v0.8.0
Added information about using the parser in node.
Added better watch implementation of TypeScript gulp task that only re-compiled changed files.
Tell gulp.src not to read file contents since we read the files ourselves.
Split test runner into its own file that doesn't need gulp to run.

This allows the tests child process to start nearly instantly since it doesn't have to spend a few seconds loading gulp.
Support top-level classes and free functions in AST walker.

While libjass will never have these, they can occur because of what's actually a compile error. Thus while the AST walker will succeed, the subsequent call to compiler.compile() will fail.