feat #1335 Range Calendar widget

This commit refactors some skin properties used in the calendar,
which breaks compatibility with existing skins.

close #1335
compat Backward compatibility with calendar skin properties

This commit restores backward compatibility with calendar skin properties
after the change introduced in commit f1081260151b1b60ea48a8ee058059082312bd13.

This commit is intended to be reverted in one of the next non-backward
compatible releases.