fix(jqLite): change implementation of mouseenter/mouseleave event

Implement mouseenter/mouseleave event refering to
http://www.quirksmode.org/js/events_mouse.html#link8 and jQuery source
code(not
dependent on jQuery).
The old implementation is wrong. When moving mouse from a parent element
into a
child element, it would trigger mouseleave event, which should not.
And the old test about mouseenter/mouseleave is wrong too. It just
triggers
mouseover and mouseout events, cannot describe the process of mouse
moving from
one element to another element, which is important for
mouseenter/mouseleave.