Added NativeProcessProtocol stop id and Linux memory region info cache.

NativeProcessProtocol now protects state with a mutex.  SetState/GetState
are protected and moved into .cpp for implementation.

NativeProcessProtocol now manages a stop id that is incremented whenever
the state is changed to a stopped state.  The stop id is accessible to
the public and is protected by the new state mutex.

NativeProcessProtocol now provides a protected virtual interface for
DoStopIDBumped(uint32_t newStopID).  The default implementation does
nothing.

NativeProcessLinux now caches memory region info into a vector.  The
vector is cleared by a new implementation of DoStopIDBumped() whenever
the stop id changes.

This change implements all of https://github.com/tfiala/lldb/issues/15.
This change implements https://github.com/tfiala/lldb/issues/11.  I'll
file a separate ticket for changing to a log-n search for a memory
region. Currently O(n).