basic voting mechanism implemented