Unittests for satori-localhost implementation

Change-Id: Ica67b3541875e3fdd6ca99ea34cddc105bdeec12
Implements: blueprint satori-localhost
Implement New Discovery Schema

Change-Id: Ibd34c44211920197cf19df535ef038279fff2714
ssh tunnels, windows support, simplify ssh proxying

Change-Id: Ib8646519fb9776db6667206269ae208c63a86a77
wrap underlying client methods with RemoteShell Methods

Change-Id: I28942ec52f63be8a13a0afa996af02d293feb598
use RemoteClient methods and add windows commands

Change-Id: I0bbcb4d81de657b4d2efad23751c3337b984e1ae
changing remote_execute to treat command as PoSh command by default
moving code to find prompt pattern into _get_output method
improving robustness of windows remote client by implementing logic to detect failures of the subprocess and using retry/reconnect logic
added more methods to mirror functionality of satori/ssh
removed install_ohai and remove_ohai which are going to be moved to satori/sysinfo/ohai_solo
adding docstrings
changing second loop in _get_output to actually account for the prompt_expected parameter
adding parameter wait to _get_output to change the time spent waiting in each loop
Unittests for satori-localhost implementation

Change-Id: Ica67b3541875e3fdd6ca99ea34cddc105bdeec12
Implements: blueprint satori-localhost
wrap underlying client methods with RemoteShell Methods

Change-Id: I28942ec52f63be8a13a0afa996af02d293feb598
fix keyword argument business and close()

Change-Id: Ie2e8b1b5322e32b2ecb92883e2419fad9c42e0d6
adds close()

Change-Id: I262b0ed3f958bdaf3fe7755bbbd70e25ae7941d6
unset rubyish things before ohai-soloing

Change-Id: I6efcc6375b66653b79209ee8809026bd9da2a573
Don't Fail on Platform Detection

Change-Id: I82102269f39c5d69bb3258a491efa97896f5fcf3
Cleanup

Change-Id: Ib86eb93dc9426283195c7cbd47beecbe254a6a56
flexible fn signatures for remote_execute

Change-Id: I46716920ca5507ef83c2f8660df6ca819da0d402