Do these functions need to be enclosed inside the ctor? Would prefer if they were on the prototype so they could be shared among instances. Plus I'm a little leery of the size of the code in the ctor.