chore($parse): convert parser() and lex() to prototype-based code
add $watch(obj, exp, listener) which uses Object.observe
lexer creates a list of identifier paths
rename test/watch to test/watchSpec
compound expression observing