core: Complain loudly about Python 2.6

POX has always required Python 2.7, but I get a lot
of problem reports from people running 2.6.  The
first thing I do is point out that they're running
an unsupported Python -- now POX will do this for me.
webcore: By friendlier to Python 2.6

We use logger.getChild(), which is available starting in
Python 2.7, which is fair since that's POX's requirement.
We now fall back to a dumb way of doing it which works
in 2.6.
libopenflow: Fix ofp_phy_port _validate()

This is a regression caused by a recent improvement.
libopenflow: Use more symbolic constants

Many things were using hardcoded literals.
libopenflow: Minor cleanup
libopenflow: Better default for port_stats_request

The port was defaulting to 0, but should be OFPP_NONE.
libopenflow: Improve adding of port_stats

port_stats objects can be added as an easy way of summing the counters.
Previously, this lost the port_no value.  Now, it is retained when it
is the same in both the left and right operand.
Merge pull request #57 from noxrepo/betta

Pull from betta
openflow: Fix docsting for keepalive
openflow: Add --timeout option to keepalive
Merge branch 'betta' into carp
recoco: Add consumer module

This module contains a couple simple classes for producer/consumer
work queues.
l2_multi: Minor cleanup
l2_multi: Be more conservative about MAC moves

l2_multi was previously willing to re-learn MAC addresses at a port which
is part of a "half-known" (in one direction only) link.  It should now
only learn them if the link is *entirely* unknown, which is probably a
better idea.

Colin found this case with STS.
l2_multi: Cleanup

This improves the comments for, cleans up, and improves behavior for a
particular case.  (Hopefully.)
log: Attempt to be friendly to Python 2.6

This may break something or be a bad idea.
boot: Don't rely on BaseException.message

BaseException.message was actually only really short-lived as
a Python feature and has been deprecated since 2.6.  This
switches to using the first item of BaseException.args, which
is hopefully as correct as the ugly hack we're using it for
can be.
implement ryu-compatible cbench app
remove unnecessary bash dependency
Merge pull request #59 from yamt/cbench2

implement ryu-compatible cbench app