Cleaned up setup script so that it can easily switch between gcc and icc using a script that came with numpy (look into licensing soon).  Found that I can save ten seconds in the example tests if I set the blocktime to 0ms.
Changed stride so that the cblas saxpy can do a better job (2-3 seconds on tests).
Removed unused padding code.
Optimized detection routine by integrating the -inf padding directly after the convolution-accumulation step.
Removed some redundant padding.
Refactored parse code so that it sits in the correct rule and symbol classes rather than switching on types.
Style changes.
autopep8
Rewrote setup.py.
Added default no limit to parse routine.
Added optional metadata to each rule.
Added rule to tree node.
Vis makes a copy of the input image now.
Expended small detection test.
Added support for flipping a filter.  Caches the flipped version.
Added root element to detection parse tree.
Bug fixes.
Initialize metadata to empty dict when unavailable.
Cant get the weakref to work right now, so just don't make lhs.
Moved detection limit outside of the library and instead a generator is returned in descending order of score.