refact: wrap the property 'begin' and 'end' to object 'color'.

In order to extend more features, wrap the 'begin' and 'end' property to
object 'color', and update the demo.
add: add validation in opacity property.
add: add opacity property to lumpy-text.

and refact some code, make every lumpy properties has 'begin' and 'end',
such as:
    opacity: {
        begin: '',
        end: ''
    }
chore: update demo js to display opacity text.
refact: refact the color_type to color.type, remove error handler.

color_type -> color.type
opacity_type -> opacity.type
add: add steps & direction properties for opacity.

such as:
    opt: {
        opacity: {
            begin: '',
            end: '',
            steps: '',
            direction: ''
        },
        steps: '',
        direction: ''
    }
add these properties to sub-scope in opacity, it is easy to config the
direction and length for opacity text.
add: add properties direction & steps to 'color'.

like previous commit.
refact: change opt.color and opt.opacity to color and opacity
feature: support the font-size change
update(www): update validation of font-size parameter
Merge branch 'develop'