common: rennovate ellipse code
This removes a barrier to multi-threading, fixes some unchecked allocation failures, removes magic numbers, removes manual tracking of ellipse points, and removes dead code. See commit messages for details.
This removes a barrier to multi-threading, fixes some unchecked allocation failures, removes magic numbers, removes manual tracking of ellipse points, and removes dead code. See commit messages for details.