Implement visitor pattern
Implement pre and post order traversal
Implement HasVisitor, has_symbol() and tests
CMake: add visitor.h to HEADERS
Refactor a little bit
Start implementing coeff()
Rename HasVisitor to HasSymbolVisitor

Because the current implementation only looks for symbols. Later we might also
implement general expressions via a new visitor class.
nthroot_mod, powermod, jacobi symbol
Find python in target architecture directory
Add test function so tests can be run from within python terminal

import csympy
csympy.test()
Remove the ImportError try/except

There is no reason to catch this error --- if it happens, we should let it
propagate.
Let sympy2csympy() handle the exception raising
Convert lists and tuples in sympify()

Add tests.
Simplify Mul::as_base_exp()

Essentially there are only two special cases, and the rest is just the general
case handled by the "else" statement.
Merge pull request #293 from pbrady/pytest_test_function

Add test function so tests can be run from within python terminal
Merge pull request #296 from certik/sympify

Improve Sympify
Merge branch 'master' into visitor

Conflicts:
	src/tests/basic/test_basic.cpp
Add a test for sin
Implement accept for all classes
Move pre/postorder_traversal to visitor.cpp