Add mockIComm_SetIsGdbConnectedFlag() API

This allows unit tests to set the value returned from
mockIComm::isGdbConnected().
Add read()/write() function mocks

These will be used for unit testing the stdin/stdout/stderr I/O echoing
to pinkySim's console in addition to GDBs.
Utilize pinkySim's console in addition to GDB's

Previously the newlib semihosting support would only issue
stdin/stdout/stderr I/O requests to GDB via File I/O packets.
I have modified NewlibSemihost.c to:
* Always send stdout/stderr writes to the pinkySim console.
* Not halt for GDB to connect on stdout/stderr writes.  If GDB is not
  connected, the writes will just go to pinkySim's console so that GDB
  doesn't need to be connected just for seeing such output.
* If GDB isn't connected, stdin reads will come from pinkySim's console
  instead of GDB's.
* Returns an error if newlib attempts to seek on stdin/stdout/stderr
  rather than forcing a seek request to be made to GDB.
* Close requests for stdin/stdout/stderr are ignored.
* Returns an error for FStat requests on stdin/stdout/stderr, rather
  than redirecting the request to GDB.
Add StdIO sample

I used this sample to make sure that applications running in pinkySim
could interact with stdin/stdout/stderr without requiring GDB to be
connected.