add smooth-scroll js and some refinements