[mdoc] No longer documenting explicitly implemented private interface members.

https://bugzilla.xamarin.com/show_bug.cgi?id=18411

If a class explicitly implements an internal interface, those members will no
longer be documented, nor will the interface show up in the class' signature.
This allows for a library to hide internal implementation details that an end
user would not be able to take advantage of (ie. can't cast to internal
interface to call methods).

Includes test (check-monodocer-internal-interface)  added to makefile.
[threadpool] Add suspend pushing to a WSQ
[threadpool] Add heuristic to approach the optimal number of threads
[threadpool] Remove process_idle_times so monitor_thread is the only function to change the number of threads
[threadpool] Put the monitor thread to sleep if there has been no tasks for the past 5 seconds (NON_BUSY_INTERATION * SAMPLES_PERIOD)

This should improve a lot power consumption, because this avoir having a thread waking up every 500ms keeping the CPU awake.
Fix some warnings by not including utils/mono-threads.h into threads-types.h.
[runtime] Add a missing call to mono_thread_notify_pending_exc_fn () to the thread abort code.
[corlib] Fix UnicodeEncoding GetMaxByteCount and GetMaxCharCount to return the same values as .net.
Merge pull request #1306 from joelmartinez/docs-privateinterface

mdoc no longer documents private interfaces
[x86] Remove the now unused push based parameter passing code.
[jit] Remove the unused MONO_DISABLE_PENDING_EXCEPTIONS env var, the functionality it disable is not experimental anymore.
[sgen] Fix concurrent mark with split nursery.
[jit] Define NOMAP32BIT on winx64.
Revert "Missing Args checks."

This reverts commit 8b9c60075f7b97fe88c3c588968977ff9bcf8c28.
Revert "Refresh HashAlgorithmTest to match changed NullStream behaviour in 8b9c60075f7b97fe88c3c588968977ff9bcf8c28"

This reverts commit 7ece665d16714db0979bde5df254231c5be24f10.
Revert "Finish test changes started in 7ece665d16714db0979bde5df254231c5be24f10"

This reverts commit d171cdf5e281973c06f2751f4e33098f1a624a95.
[amd64] Define MONO_ARCH_NOMAP32BIT on all non-linux platforms instead of defining it once for each platform.
[jit] Remove unused defines.
[sgen] Reorganize sgen-archdep.h to remove unused defines.
Fix the arm build.