Change __repr__ of class Port
Slightly modify docstrings of the Switch class
Split the masterslave module into 2 separate modules
Rename tests/test_switch.py to tests/test_ethernet_switch.py
Introduce enumeration for message types
Add data attribute to instances of the class Message
Add synchronous requirements table to instances of Master
Create class for a switch that embeds an FTT master
Fix bug related to default parameter value for Master constructor

In Python default parameter values are always evaluated when, and only
when, the def statement they belong to is executed.

From the official documentation:

"Default parameter values are evaluated when the function definition is
executed. This means that the expression is evaluated once, when the
function is defined, and that the same .pre-computed. value is used for
each call. This is especially important to understand when a default
parameter is a mutable object, such as a list or a dictionary: if the
function modifies the object (e.g. by appending an item to a list), the
default value is in effect modified. This is generally not what was
intended. A way around this is to use None as the default, and
explicitly test for it in the body of the function [...]"

http://docs.python.org/3.3/reference/compound_stmts.html#function-definitions
Add missing "self" prefix when calling process_update_request_message(m)
Make an FT4FTTSwitch forward update requests to the embedded master
Use strings instead of integers for message types
Make FT4FTT switches flood trigger messages from the embedded master
Merge branch 'embed-master-in-switch' into next
Add tests for FT4FTT switch
Merge several modules into a single module named ft4ftt
Merge module ethernet into module networking
Make FTT message type a class of module ft4ftt
Merge branch 're-organize-code' into next
Reorganize the tests into several subdirectories