Safely rotate directories whilst operating with latest path

Rotator#rotate will rollback if an error is raised during yield.