expose custom macroexpand, make it check the locals before expanding, and make sure fn* registers itself if it's named, fixes #1
take out docs, those should be in another branch
update gitignore