Fix dupe callbacks in VaultAddChildNode

This code called back into the python vault operation thingy, which
deletes itself. So, anytime we got dupe CBs, there was a use-after-free
error. Nasty crashes. I tightened up the CB management, threw away some
weird faux-management mess, and squashed some potential silent bugs.
Merge pull request #434 from Hoikas/dupe-callback

Fix dupe callbacks in VaultAddChildNode
Fix typo in non-Win32 logging code
make hsAssert variadic (to allow printf like error message)