various improvements to X-Object