Fix command quotes in Repl v2.

- We no longer need the weird backslashes to execute commands
  non-interactively.
- As a result, non-interactive execution of multiple commands
  is no longer possible.
- The exit_on_error command-line flag is handled in interactive
  Repl now.

Change-Id: Id7dee67401c744cff1c6ce6b2030ea86f5739716
Refactor for better readability.

Change-Id: Ife4dfa5391a05b1423cd10e7e889cdbc554ac789
Define protocol buffer messages

Change-Id: I54812d6e5fce7e3b6e9ee922666a30bb263111e7
Define interfaces

Change-Id: I829c15d6119bf0cdefd27ac769683fdb57f7d872
Return message type from messages

Change-Id: I8e5d1c3308d8b45070efa4fc592698bce4559534
Fix bug in special casing run command.

Copying of fields from a run request to a spawn request was earlier
assuming that all fields in the run request responded to the 'dup' call
when copying. This was wrong, for example it failed for the 'privileged'
field in run request which is of type boolean. The right way to do
this was to clone the run request through Beefcake's encode/decode
before copying its fields to the spawn request.

Change-Id: I5c1b600041c4655743ba08f9c3586efa5867aa9c
Return list of alive job ids in info response.

Change-Id: Ie67a1c3964a31c2f50ebab3437c4b53b9f506cd2
Add protocol reader/writer

Change-Id: Ib51711eba3a98d90228ca49cf27ef8730c6dc9d0
Unify readers/writers

Change-Id: I4b633ad2dc5df4db49a6ae814117ca9d35b6fd23
Move code

Change-Id: Iafa33a4f50e29ef34112d438466ad414c1235a57
Lifecycle handling

Change-Id: Ib5342d84186452ad98de234804aba660afe7e52e
Network/port pooling

Change-Id: Ideb2484ee33be669b15cd766a3147316b7e5da2c
Close in/out/err in wshd when entering accept loop

If this is not done, processes hanging on to in/out/err of the parent
wshd processes will not see an EOF until the child wshd process
terminates.

Change-Id: I214baaf957c82ab7492fa1f290195108748cb024
Merge remote-tracking branch 'origin/wsh2' into wsh2

Change-Id: Ie37686e910bfa551bed4c7a87cdd2e8ccdbe6d38
Populate info response with list of alive job ids.

Change-Id: I1985272593d390073635a1ddef3f33792a673fce
Merge branch 'wsh2'

Change-Id: I2f9810acdcfc43aeef80ccc55b67cf92d90b927e
RLIMIT_AS must be specified in bytes

Change-Id: Id7f6b7c26740f92b9ee4464bb2352fc2b064a239
Don't special case iomux-link exit status.

Change-Id: Id2a1962a66a2f85cd6fb4386ae796a97fa5fb639
Configure write side of pump pair to be blocking

When this is not done, a write issued from pump_pair_copy may return
EAGAIN and close the pair. Instead, the write must go through and is
allowed to block.

Change-Id: Ib1b755a067c4cab932ad2ac8f6f0e5de7bdd0109
Merge "Configure write side of pump pair to be blocking"