shill: use EthernetTemporaryService to load Ethernet entries from profile

Currently Profile.GetEntry is not able to retrieve Ethernet entries that
are not active (not registered with manager), due to the lack of Ethernet
provider.

The fix here is to create a dummy Ethernet service (EthernetTemporaryService)
to load such entries from the profile.

BUG=chromium:481668
TEST=USE="asan clang" FEATURES=test emerge-$BOARD shill
Manual Test:
1. Connect and then disconnect an ethernet device
2. Use get-profile-entry test script to retrieve the Ethernet entry
   "ethernet_*":
   /usr/local/lib/flimflam/test/get-profile-entry default ethernet_*
3. Verify entry properties are returned

Change-Id: Ied037f1d1d2572b6121610539a88f82a53a0742e
Reviewed-on: https://chromium-review.googlesource.com/267783
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Zeping Qiu <zqiu@chromium.org>
Tested-by: Zeping Qiu <zqiu@chromium.org>
4 files changed