lots of style improvements