Refactor HTMLActuator to properly render variant tiles >1000.

The motivation for this patch is that I want to add a variant
merge rule that generates four-digit numbers that aren't powers of
two. The old code styles such numbers with too big a font size;
e.g., a tile with value 1234 would be styled with class "tile-1234",
which doesn't exist, and then it would render sloppily. I believe
a friendly default behavior is to style such tiles with "tile-1024".

I'm also leaving the door open for variants to style the color of
the tile and its font size using two (or more) separate CSS classes:
e.g., ["tile-red","tile-4digits"].

No intended functional change.
Merge branches 'MergeRules', 'AppearanceClasses' and 'Sass345' into BitVariant
Example of a 2048 variant using my refactorings.

In this variant, tiles can be merged if their values'
binary representations share no bits in common.
The value of the new tile is the bitwise OR of the
old tiles' values, except that if all its bits are
set, it increments to a new power of 2. For example,

    1+2 = 3 incremented is 4
    4+1 = 5
    5+2 = 7 incremented is 8
    5+1 is not allowed