Tested GP

It seems that all methods are functional. No input checking yet, though.