Added basic up/down voting functionality

  Test are passing.
  May need to provide more test conditions.
Line is too long. [87/80]