Bit of Refactoring + Fix origin issue

There was a really annoying bug where the spheres would return to 0,z or
x,0
Also, wasn't a big fan of XYZTuple.