update and modernize .cabal file