Tentative structure [WIP] for interfacing Arb

Main changes:

+ Added method n() to `Basic` class which evaluates the instance by
  calling `eval()` function.
+ Two new files were added, `eval.h` and `eval.cpp`, which contain
  the functions for evaluating CSymPy types. These files contain main
  evaluation function `eval()` and support functions.
+ `eval()` is a if-else chain that calls the correct support function
  by checking the input instance type.
Remove the comments
Merge branch 'master' into arb

Conflicts:
	src/CMakeLists.txt
	src/basic.h
Fix build error when arb is not installed
Basic structure for expression evaluation

Removed the if-then-else chain type of evaluation by visitor pattern.
Implement `visit` for Integer, Rational, Add

Add precision as a member(prec_) in EvalArbVisitor class and modify apply
and eval_arb to support it.
Fix typos in eval function declaration in eval.h
Rename source/header files from `eval` to `eval_arb`

Remove unnecessary include of `eval.h` from `basic.cpp`
Fix a typo
Implement `visit` for Mul, Pow, Sin, Cos and Tan
Add MPFR library
Add tests for `eval_arb`

Initialized some `arb_t` variables which were not initialized previously.
Refactor
Fix a bug: initialize `arb_t` variable before setting value
Merge pull request #299 from thilinarmtb/arb

Interfacing Arb