Add support for x86 devices using iPXE as the bootloader.
Add support for x86 devices using iPXE as the bootloader.

For this to work, you need an x86 device (I've got a Dell PowerEdge) with iPXE installed on the default boot device (I'm using a USB stick).
A future config could be to chainload iPXE using PXE so any x86 device in the lab without a bootable medium ends up in iPXE.

I've changed the sendline function to call send(string) then send(os.linesep) to enable passing a delay between characters when writing to the serial line. Adding a delay cured a problem I was having with iPXE dropping random characters when large strings were sent over serial at high speed. The 2 calls the send actually mimics the behaviour of pexepect sendline anyway.
I had trouble using send to interrupt the bootloader with a control character to added a sendcontrol function which uses the pexpect sendcontrol as per the pexpect documentation. See http://pexpect.sourceforge.net/pexpect.html#spawn-sendcontrol

configuration.rst did not match what was at the head of bzr lp:lava-dispatcher so I've added it to my commit.

Amended changes as per Tylers' review. Also added the connection_command to the log output when connecting to console of a board as it's really useful to have that info when debugging problems with boards in the lab.

Amended again for next review, and hopefully moved it onto a branch...

Change-Id: Ib5d8521a8446f446592986cc2ba473113931673a

Linaro/lava-server,OSSystems/lava-server,Linaro/lava-server,OSSystems/lava-server,Linaro/lava-server,Linaro/lava-server,OSSystems/lava-server