Curry functions and better class system