new formulae language implementation

unified language and parser for the registered types  'vector' and 'real' and @dictionary parameters
referenceing of values across cps rules/@dictionaries etc
transformation matrices
Polar vector constructor
updated importer that saves onDir and onLength
got rid of a lot old code
etc.

To explain 2): I am suggesting that instead of using a whitelist you simply define classes with only those properties you want to expose to CPS. (Because there will be fewer properties, they are logically superclasses.) Then, rather than use a whitelist, you simply do lookups on those classes. What this looks like is that instead of a `cps_whitelist`, you have a `cps_proxy` property, which is defined to be the "superclass" object, and instead of all the whitelisting code, you simply look up `cps_proxy[name]`. You could put the logic for addressing multiple data sources into this object as well.