Fix hang on shutdown when upnp is enabled (#1856)
Fix hang on shutdown when upnp is enabled (#1856)

* Fix #1718: hang on shutdown when UPnp enabled

There was a 20 minute wait in the port mapping thread which could
not be interrupted by a thread interrupt. Solution was to break up
the 20 minute wait into 1 second waits and then check if a shutdown
had been requested and then exit the thread if true.

* use std::thread instead of boost::thread

BitcoinUnlimited/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,Justaphf/BitcoinUnlimited,Justaphf/BitcoinUnlimited,Justaphf/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited