Creating your own estimator in scikit-learn

I had an interesting problem in my work and I finally had to get to something I'd been thinking for some time now.