add js hint rules into gulp and change js architecture