Refactoring Square. Almost done.