Anomaly modular

1/ turn `anomaly.py` into a class for better reuse, move related logic from `clamodel.py` here
2/ nice speedup for python (use `numpy.sum()`)
3/ new features/"implementation" to anomaly computation - parametrized, default off, so no change from current 
3.1/ new `cumulative anomaly` (sliding window)
3.2/ @subutai Please have a look if you like this approach, it's prepared for integration with your `likelihood` anomaly code
4/ added tests
@subutai this is what I wanted to do initially. but (CLA)model provides me only with `"model"._netInfo.net.regions.get('TP', None)` which is `<nupic.engine.Region object at 0x2b81381fb950>  type=<class 'nupic.engine.Region'>` 

I tried now in `0923c06`  but got lost in the call chain :) ..
`    raise Exception("XXX"+str(self._getTP())+" type="+str(type(self._getTP())))
  File "/home/mmm/nupic/nupic-source/nupic/frameworks/opf/clamodel.py", line 997, in _getTP
    return tp._get("_getTP")
  File "/home/mmm/nupic/nupic-source/nupic/engine/__init__.py", line 544, in _get
    return getattr(self._region, method)()
AttributeError: 'Region' object has no attribute '_getTP'
`