Hurd and x86 improvements
Use double underscore variant of a symbol to avoid symbol clashes with other libraries
Ensure that regions are probed during probe
- Split out access to /dev/mem to a separate function with x86/hurd compile time ifdef because hurd accesses memory slightly differently when root filesystem is not available.
- Remove check for memory == NULL for mapping ranges so mappings occur unconditionally