* Make this a factory
* Move static methods to the top of class