implement groups page and misc improvements