Added currying functions and a print method that returns input for chaining.