Massive reworking of core

removed cython dependency and changed how the basic objects work,
however the 'API' maintains to be the same on the user end