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`