1) Yes it only provide PullUp resistor. Yes you can change the behavior by modifying the source code around line 131:
Program.RaiseEvent(module, "Status.Level",
status ? "1" : "0",
just invert "1" and "0" values. Other way is the pull down resistor.
2) I am a software guy, so don't know much about electronic stuff =) But I can make I guess about this. Hg is using polling rather than interrupts, so this may lead to a bit of heating excess (just guessing).
Cheers,
g.