extracted voteable module to a gem