WIP: perf($parse): only execute watched expressions when the inputs change
refactor($parse): name anonymous fns for easier debugging and profiling
refactor($parse): merge ternary and ternaryFn methods

splitting the code into two chunks doesn't buy us anything and only makes the code harder to follow
WIP: fix tests