enca: fix memory leak
Restore hinting

This was broken since commit f780146. For reasons why, read the commit
message of that commit. To make it short, we set the font size to
something large and constant (256), and scale the font outlines returned
by freetype to the size we need in order to get smooth animation and
accurate positioning.

Of course, this obviously breaks hinting. Fix hinting by not using the
hack mentioned above if hinting enabled.

To mitigate the issues caused by freetype grid fitting and extremely
bad ASS scripts (such as setting font size to very small values and
scaling them up with \fscx/y), we still adjust the font size such that
the font is never scaled in Y direction (only in X direction, because
the \fscx/y tags can change aspect ratio).

Also see google code issue #46.
Skip both newline and carriage return.

'\r' characters weren't skipped correctly.

SKIP_SYMBOL from original patch renamed to IS_SKIP_SYMBOL.

Signed-off-by: wm4 <wm4@nowhere>
Fix Hinting again

Commit 05eb520 missed some duplicated bits in ass_shaper.c.

<wm4> oh crap
<zgreg> oh crap indeed

Instead of duplicating the logic in ass_shaper.c, just change the
glyphs before they even get into processing. This way, all code
reading the font size etc. is affected. This essentially reverts
commit c207000c, because it's not needed anymore.
Cosmetics: remove repetition
ass_shaper: changing scale_x/y starts a new glyph run

Since font_size is usually normalized to 256, scale_x/y has to be used
for this purpose.
Don't rely on events being sorted in ass_step_sub()

ass_step_sub() assumed that the subtitle event list was sorted by event
start time, but that is not guaranteed. Making the list sorted is not
an option. (At least for now - too many issues are in the way to get
such a change being done.) Fix this function so that it works with an
unsorted event list.

Semantics regarding corner cases might be slightly different, such as
what happens if the now parameter coincides with event start/end, or
behavior with overlapping subtitles.
Merge branch 'master' of https://code.google.com/p/libass

Conflicts:
	libass/ass_render.c
	libass/ass_shaper.c