I guess there will be merge conflicts with this module, still ongoing refactoring, new PR is in master.

We should have this PR in before merging the next round of GEE changes.