The three rules of Ruby Quiz:

1.  Please do not post any solutions or spoiler discussion for this quiz until
48 hours have passed from the time on this message.

2.  Support Ruby Quiz by submitting ideas as often as you can:

http://www.rubyquiz.com/

3.  Enjoy!

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

by Pat Eyler

My kids like to play a variant of "Cows and Bulls" when we're driving.  One of
them (the server, to use a computing term -- you'll see why in a minute) will
think of a word (we usually play with either three or four letters), and the
other (the client) will try to guess it.  With each guess, the server will
respond with the number of 'cows' (letters in the word, but not in the right
place) and bulls (letters in the correct place in the word).  

Here's a short example:

	Server:  (thinks of the word cow)  I'm thinking of a three letter word.
	Client:  cab
	Server:  0 cows and 1 bull
	Client:  cat
	Server:  0 cows and 1 bull
	Client:  cot
	Server:  0 cows and 2 bulls
	Client:  cow
	Server:  That's right!

This weeks quiz has a couple of flavors:

1)  You can write a server that will play our version of "Cows and Bulls".  It
should follow a simplified version of the above, and look like:

	Server:  3                 # the number of letters in the word
	Client:  "cab"
	Server:  "0 1"
	Client:  "cat"
	Server:  "0 1"
	Client:  "cot"
	Server:  "0 2"
	Client:  "cow"
	Server:  1                 #  indicating success

2) You should write also write a client that a player can interact with to play
the game.

3) You can also write a player that will interact with the server and play a
game.