Refactor. Set options on the initializer.
Refactor. Use generic name for method.
Make private methods private and start documenting.