Carousel now bi-directional

Added directional logic and directional triggers
Refactored for futured extendability