Added additional 'gettime' interface using clock_gettime call in place of rdtsc
added optimized rdtsc with synchronization
changed rdtsc semantics: returns 'duration' rather than returning error if duration is larger than threshold

Changed igb lib to allow multiple processes to access network card:
Only one process may transmit
Several processes can access CSR space:
Added semaphore to lock register access
calls e.g. get_wallclock are "locked"
calls to read/write reg are not - lock/unlock calls are added and must be used to wrap read/write transactions
Merge branch 'open-avb-next' of https://github.com/intel-ethernet/Open-AVB into open-avb-next
Added additional diagnostics/status to Linux shared memory interface
Fixed race condition in TimerQueue in Linux
Made API and port initialization sequence changes to facilitate the above changes

Added lock to timer handler, delete and add functions

Starts announce when accelerated sync count is non-zero
sends single announce message at start
Linux uses shared memory to store persistent state
Silenced compiler warnings in gptp and simple_talker
Changed simple_talker to reflect changed igb library
lib/igb:
  Change attach_tx API
  Corrected locking problem

simple_talker
  Changed to correspond to changed lib/igb API
  Fixed argument parsing problem
  Fixed crash where gPTP isn't started

gptp/windows
  Changed to correspond to API changes

gptp/common
  Parameterized waiting for TX timestamp, fixing Linux bug
Fixed line-ending issues
Merge pull request #38 from christopher-s-hall/open-avb-next

Updated fast startup features