Add BigDecimal/BigInteger/Currency/TimeZone support
Add UIForm, refactor UIComponent