Added utility methods and fixed some silly constructor logic.