getlantern/lantern#1974 Added timeout to NAT-PMP logic

Closes getlantern/lantern#1974
What are these Timeout and Temporary functions?  Some interface required by some Go internals?  I don't see them used anywhere.