some refactoring and added use strict
version increment