initial Python module, expect substantial clean-up/revision/restructuring to occur