making setMinHeight optional
doing some much-needed refactoring