Improve code style, update to latest ES6 draft