Implement a scalar expression parser

closes #395

This will fail until the `py.test` PR (#384) goes in

- [ ] string tests
- [x] failing (they should) chained comparison tests
This sort of thing is exactly why SymPy doesn't overload `__eq__` despite users constantly clamoring for it.  Blaze has so far decided to ignore this wisdom, but I've been burned more than once by it.  cc @asmeurer