handle Length in non-selector position (Fixes #382)

New JsCore ADT representing JavaScript expressions.

New $SimpleMap op which applies a JsCore to each value.

Simple cases work, but many queries run into bugs in construction of groups
(see #403, #407).