Fix behavior in scrolled containers.

Pointer agent used to assume that all targets are in the viewport
without scroll and used clientX/Y properties. This however is not always
true in material design (it allows for scrolling) and thus it is safer
to use pageX/Y properties.
Fox for material design waves.

On Android the native wave is triggered on elements even when the wave
element was not pressed. This allows for retargeting the click point
when it hits the wave and also allows the same behavior on the web as it
is observed on native.

Example is illustrated in the updated demo for radio buttons.
Fixes for the material button.

Allows to have buttons without the ink effect. Allows to have animation
and no animation state for shadows, allows to have delayed icon
animations, fixes the default styling, adds demo.