CLN/ENH: more reliable temporary variable mechanism
ENH: added interpretation of 'in' in pytables Term syntax

which is syntactically equivalent of '='
ENH: allow parsing of datetimes
ENH: ensure that resolvers do not overlap with current scope
BUG: numexpr < 2.1 needs to stringify (and not unicode) the expression to ne.evaluate
BLD: py3 compatibility fixes
CLN/ENH: pass engine and parser to recursive calls to eval
TST: make sure py3.x behavior is expected
ENH: check for name clashes at the last possible moment
ENH: add local scoping with @lcl_variable syntax
ENH: add DataFrame.eval method and tests for local syntax
ENH: add typename to tmpvars
TST: make sure correct exception classes are tested in query
BUG: fix Term expression printing if the expression is not a string (e.g. an ndarray)

BUG: _ensure_term will now only coerce to a Term if its maybe_expression
     so will not coerce coordinate looking (e.g. list of integers or ndarray)
CLN: translate in for pytables
CLN: resolvers must be checked before the calling frame

Otherwise an expression like

df['index']

will blow the stack. This is because 'index' is a valid expression (if it isn't
a column name) so an neverending mutual recursion will occur between looking
up a value and trying to query the expression, because look up is done through
DataFrame.__getitem__().
ENH: add in, not in, and string/list query support
TST/CLN: remove not implemented nodes from testing
TST: make sure NotImplementedError is raised for string queries and Python parser
DOC/CLN: remove temporaries