move zeta function implementation code to separate module (wip)