implemented swipe functionality. removed shuffle as this needs a rework