[cleanup] Refactor __init__.py (#2570)
* Split `__init__` code into multiple functions * Clean up validation code by grouping similar types of options * Expose `parse_options` to third parties
This commit is contained in: