refactor of the geo form ... move geo form stuff lib