Learning Complex Functional Manipulations By Human Demonstration And Fluent Discovery