Generalized Cylinders for Learning, Reproduction, Generalization, and Refinement of Robot Skills