* Add 'ProxyDrawable' for base class which delegate most ops to another 'Drawable';
 * Add Compat class 'DrawableCompat', 'ViewCompat';
 * Rename 'TieredDrawable' to 'EffectDrawable', and change its base class from 'Drawable' to 'ProxyDrawable';
 * Integrated 'RippleDrawable' to 'EffectDrawable';
 * let 'DrawableCompat' and 'ViewCompat' extends the Support V4 library ones;
 * Refactoring 'RippleDrawable'
    * Implement 'RippleState';
    * mprove max radius calculation;
    * extract 'StateChanger' and 'RippleStateChanger' class to handle state change stuff (eg. animation);
 * Implement the 'RippleAnimation' function, click one view, show ripple on the other view under current structure;
 * Make 'ProxyDrawable' original drawable Nullable;
 * Clean up: remove previous implementation 'RippleAnimation' and 'RippleView';