ARP: factored out an IARPCache
IPv4Address: rename getBroadcastAddress() to makeBroadcastAddress()

Also: added getNetworkBroadcastAddress() to IPv4InterfaceData
MACAddress: added mapMulticastAddress()
Ieee802Ctrl.inputPort renamed to interfaceId
Renamed a number of things.

IPvXAddress          -> Address
IPvXAddressResolver  -> AddressResolver
IRoutingTable        -> IIPv4RoutingTable
RoutingTable         -> IPv4RoutingTable
RoutingTable6        -> IPv6RoutingTable
RoutingTableAccess   -> IPv4RoutingTableAccess

Conflicts:

	src/applications/pingapp/PingApp.cc
	src/networklayer/common/INetfilter.h
	src/networklayer/common/IRoute.h
	src/networklayer/common/IRoutingTable.h
	src/networklayer/contract/AddressResolver.cc
	src/networklayer/contract/AddressResolver.h
	src/networklayer/generic/EchoPacket.msg
	src/networklayer/generic/EchoProtocol.cc
	src/networklayer/generic/EchoProtocol.h
	src/networklayer/generic/EchoProtocol.ned
	src/networklayer/generic/GenericNetworkProtocol.cc
	src/networklayer/generic/GenericNetworkProtocol.h
	src/networklayer/generic/GenericRoute.h
	src/networklayer/generic/GenericRoutingTable.h
	src/networklayer/ipv4/IIPv4RoutingTable.h
	src/networklayer/ipv4/IPv4.h
	src/networklayer/ipv4/IPv4Route.cc
	src/networklayer/ipv4/IPv4Route.h
	src/networklayer/ipv4/IPv4RouteAdapter.h
	src/networklayer/ipv4/IPv4RoutingTable.cc
	src/networklayer/ipv4/IPv4RoutingTable.h
	src/networklayer/ipv4/IPv4RoutingTableAdapter.h
	src/networklayer/ipv4/RoutingTableRecorder.cc
	src/networklayer/ipv6/IPv6RouteAdapter.h
	src/networklayer/ipv6/IPv6RoutingTable.cc
	src/networklayer/ipv6/IPv6RoutingTable.h
	src/networklayer/ipv6/IPv6RoutingTableAdapter.h
	src/networklayer/routing/dymo/xDYMO.cc
	src/networklayer/routing/dymo/xDYMO.h
	src/nodes/inet/GenericNetworkLayer.ned
Merged the numerous gates in INetworkLayer and other modules like that.

TCP, UDP, SCTP, RSVP, OSPF, MANET are all merged into transport gates.
Network user modules must register their protocol number by sending
an IPRegisterProtocolCommand from initialize.
This is phase 1.
FWMath.h: TraCIMobility didn't compile with MSVC
Added Ieee80211 carrier sense tests.

Covers mutual transmissions for in range and out of range,
synchronized and delayed scenarios.
Added a new IPv4 route check.
BIG REFACTORING -- TODO split up commit; describe changes in commit message
ARP: refactoring: ARP is now next to the IPv4 module not below it; see TODO below!

Motivation:
 - performance improvement (datagrams no longer go through ARP)
 - conceptually better (packets to PPP no longer flow through ARP)
 - more consistent with how IPv6 and NeighbourDiscovery are organized

TODO:
 - update NED docu of both ARP and IPv4!
 - proxyARP is now both in IPv4 and ARP??
 - refactor ARP gates: queueIn+ipIn/queueOut (all connecting to IPv4 though)
 - note: IPv4RoutingDecision is now only effectively used on the ip-->arp connection
added GenericNetworkProtocol & co.
added MultiNetworkLayer
added DYMO protocol
added GPSR protocol
added RIP protocol