1. Complete pattern match
2. Add operators
1. Add function param name pattern match support
1. indentation from 4 spaces to 2 spaces
1. Pattern match now supports memoize results