physical properties

also fix db.py build, though it's not pretty... stupid cyclical build
dependencies. It's ridiculous that this works