Refactor constuctor methods to prototypes