add voting functionaility to models