added decrement button, refactored