C++11 smart pointers for cleaner interface management.

The APSs share a pointer to the ethernet resource manager.  When all the
managers are disconnected then the interface is destructed.  The library
holds on to a weak_ptr to pass the interface around but will still allow
destruction when there are no APSs connected.

--CAR