web/board: We're not done until the last rotation

Also strengthen unit tests to catch this.