Remove temporary variables where possible
Clear temporary variables using `arb_clear`
Refactor `apply` function

Now the initialization of `prec_` and `result_` take place inside
`EvalArbVisitor`'s constructor. This way we don't need to pass precision value
to `apply` everytime it's called. Moreover `result_` is cleared in the
distructor, which we didn't do before. Changes were made according to the
suggestions by Ondrej.

Link to the original comment:
https://github.com/sympy/csympy/pull/322#issuecomment-62772833
Return `arb_t` types by value since they are defined as arrays in `arb.h`
Refactor `visit(const Pow&)` to treat `Exp(x)` separately.

`Exp(x)` can be evaluated much faster with `arb_exp` than using more general
`arb_pow`. Change was made after a suggestion made by Fredrik Johansson,
author of Arb.

Link to the original comment:
https://github.com/sympy/csympy/pull/322#issuecomment-62751206
Merge pull request #322 from thilinarmtb/arb_refactor

Refactor Arb `visit` functions