Create thread in passthrough objects lazily.

Also, moved SynchronizedQueue to not be exported
becaue it's not used outside of the library.

Notice, it would be cleaner to add variables to TaskRunner
and then use those to determine if it's initialized or not.
However, the ABI of TaskRunner is tied up in HIDL clients.
Perhaps in the future, we can consider renaming
SynchronizedQueue to be called TaskRunnerImpl.

Bug: 38039413
Test: boot + hidl_test

Change-Id: Id5dbffe0196447c7798ba89df0ff8c69b6796210
3 files changed