sw test tool: make the message receiving part independent as a class

the test methods which are in the OfTester class (e.g. _test_flow_install()) are due to be divided and stored in several classes by this patch series.
as a result, OfTester._wait() will be called from several classes.
for ease to reference from each class, the part that receives messages becomes independent as a class, and it holds as a single instance in the module.

the Waiter class, the part that receives messages, takes the following on from the OfTester class:

  - the method that waits for the messages
  - the methods that handle received messages
  - the variables that are used by the above methods
sw test tool: make the prerequisite part independent as a class

'prerequisite' part becomes independent as a class from the Test class and the OfTester class for future expandability.

the Prerequisite class takes the following on from the OfTester class and the Test class:

  - the method that initializes the target switch
  - the method that installs the flow entries
  - the method that confirms that the flow entries were installed correctly
  - the method that parses 'prerequisite' part in the 'test' block of the test file
sw test tool: make the ingress part independent as a class

'ingress' part becomes independent as a class from the OfTester class and the Test class for future expandability.

the OneTimeImpressor class, the part that expresses 'ingress' part, takes the following on from the OfTester class:

  - the method that sends the specified packet
sw test tool: make the analyzer part independent as classes

'egress', 'PACKET_IN', and 'table-miss' parts become independent as classes from the OfTester class and the Test class for future expandability.

the OutputAnalyzer class, the part that expresses 'egress' part,  and the PacketInAnalyzer, the part that expresses 'PACKET_IN' part, take the following on from the OfTester class:

  - the method that counts the transmitted packets and the received packets
  - the method that confirms that the received packet is the same as the transmitted packet
  - the method that analyzes the reason why the numbers of the received packets differ from the numbers of the transmitted packets

the TableMissAnalyzer class, the part that expresses 'table-miss' part, takes the following on from the OfTester class:

  - the method that counts the matched packets and the unmatched packets
  - the method that confirms that the numbers of the matched packet did not increase