Merge pull request #40 from rlsosborne/ports_without_on

Ensure ports and clocks are always placed on tiles.
Update CHANGELOG
Update CHANGELOG
'Release: 2.2.1rc0'
'Release: 2.2.1rc1'
First attempt at merging in new buffering code.
Still need to eliminate old mii_malloc and check timing constraints
Optimization to ethernet, now passes XTA constraints (on 500 Mhz part)
Made the wrapping buffers the main buffering scheme, removed old buffering scheme
Update module build to remove reference to mii_malloc_wrapping
Code tidying
Fix bug in mii_rx + tidy up duplicate definition in mii_packet
Tidying + fix buffer trashing bug in the case of mii rx buffer overflow
Fix build bugs + new custom filter hook
Added mac_filter.h for apps to reference
Fix board support build issue
SMI updates to support XC-2
Tidying up whitespace
Adding client to get timer offset from server tile

The transmit and receive timestamps may need to be corrected at the
client if the server is on another tile and the client compares the
timestamps with a local timer.

The timers across tile are synchronous but will be offset by a constant.
This constant differs when booting from flash versus boot from JTAG.
Removing dual port from key features for now
Updated CHANGELOG