review and cleanups
fixed an unnoticed typo bug in geom.py