Slight refactoring of the shapes portion of the library