I understand the presentation of a language in logic as having relations with arities, functions with arities and constants. I understand that a constant can be thought as a function with arity $0$.
What I do not understand is that we can get rid of functions. If $f$ has arity $n$, I loosely understand that we can add a new function symbol $R$ of arity $n+1$. We define its interpretation in a $L$-stucture $\mathfrak{M}$ as $\overline{R}^\mathfrak{M}=\{(x_1,\dots,x_n,x_{n+1})\in |\mathfrak{M}|^{n+1}|x_{n+1}=\overline{f}^\mathfrak{M}(x_1,\dots,x_n)\}$.
In what way can we say that working with $R$ is the same thing as working with $f$, first model-theorically and syntactically ?
Assume for simplicity that $L$ has only one symbol, $f$, which is an $n$-ary function symbol and $L'$ has only one symbol, $R$, which is an $(n+1)$-ary relation symbol.
Then we can find for any $L$-structure $M$ an $L'$-structure $M'$ such that $M$ and $M'$ are bi-interpretable (in the sense that there we can add definable symbols to give $L\cup L'$-structures on both $M$ and $M'$ which makes the two isomorphic), namely we define the universe of $M'$ to be the universe of $M$ and $R^{M'}$ as the graph of $f^M$ (like you have written). Bi-interpretability is immediate.
In the same way, we may translate $L$-theories to $L'$-theories interpreting one another and it will translate complete theories to complete theories.
The converse is not true, of course: in an arbitrary $L'$-structure $M'$, the interpretation $R^{M'}$ need not be the graph of a function.