adding validation and documentation to init and install, refactored the handling of python::version to be more precise. the code changes are not tested yet, have no spec testing, but need to be synced to my repo