my first real pull request

this stuff should go live, but not urgent.