- use grunt-regarde instead of grunt-contrib-watch
 - fix grunt-contrib-livereload to support random port