Allow for customization of movement by providing interface to provide arbitrary correction and stop point