Prepare for LLDB DebugSession: Let MIDebugSession handle MICommand instantiation
Let MIDebugSession handle most MICommand instantiations, so that lldb DebugSession has a chance to use custom command type. Also fixed a bug in MIDebugger that stdout is read instead of stderr when stderr is ready to read.
Following this would be another RR that actually add a basic LLDBDebugSession.
Test Plan: use unit tests under gdb folder
Reviewed By: apol
Differential Revision: https://phabricator.kde.org/D1918