i18n & i17n
refactoring
optgroup support
shouldComponentUpdate
added type chain
5th iteration