Revert _parse_angle to being a simple generic function