Fix for spurious error thrown by the error handling code when no network is found during Microkernel initialization.  This should fix the spurious error that was reported by @eoghank as part of the discussion in Razor Issue #178 (https://github.com/puppetlabs/Razor/issues/178).
Shortened up timeout used for missing network to 5 minutes (was 15 minutes prior to this commit)
Shortened up timeout used for missing network to 2 minutes (was 5 minutes prior to this commit)
New version of the  Microkernel that includes fixes for an error that is thrown when the network cannot be accessed during Microkernel initialization.  This version uses an exponential-backoff algorithm for timing of searches for the network (instead of using a fixed time increment for subsequent searches if the first search fails), imposes an arbitrary (15 sec) delay before loading kernel modules (to try to avoid the race condition we seem to be seeing between kernel module loading and network card initialization in some hardware),  and uses a much shorter (2 minute rather than 15 minute) timeout before the initialization script considers the network to be unreachable.
New version of the  Microkernel that includes fixes for an error that is thrown when the network cannot be accessed during Microkernel initialization.  This version uses an exponential-backoff algorithm for timing of searches for a valid network interface (instead of using a fixed time increment for subsequent searches if the first search fails) and uses a much shorter (2 minute rather than 15 minute) timeout before the initialization script considers the network to be unreachable.  In addition, if no valid network interface is found during such a search for a valid NIC, any kernel module that matches a pattern containing the list of supported NIC firmware modules is reloaded before an additional search is made.  Similarly, before such a search is made the DHCP client is restarted before an additional search is made if no NIC was found or if a NIC was found but that NIC didn't have a valid IP address.  These changes should fix the issue raised recently by @eoghank in the Razor issues list.
Fixed a few typos in the last version (and moved the ifconfig output back to the top of the "each" rather than storing it as a separate variable and calling "each" on that list...that list is not used for anything else so it doesn't need to be kept in a separate variable).
Changed the bundle build script so that the initial Microkernel configuration for a "debug" kernel is set to "Logger::DEBUG".  Also, added additional "logger.debug" output that logs the stack traces for any exceptions thrown during interactions between the Microkernel Controller and the Razor server.  These changes only effect the behavior of the debug kernel; the development and production Microkernels both remain unchanged from the previous commit.
Fix to RazorMicrokernel::RzMkHardwareFacter.clean_fact_map_keys!() function.  Prior to this change, this function was trying to modify a Hash map in the middle of an "each" iterator over that same Hash map (which, naturally, generates an exception).  With these changes, the iteration is now over the keys for the Hash map, not the Hash map itself (and so no exception is thrown when the underlying Hash map is modified).
Merge pull request #5 from tjmcs/master

Fix for "uninitialized constant RxNetworkUtils" reported Razor Issue #178