/dev/v4l/by-path doesn't return all available devices. So, to make sure
that we include all available devices, the list of devices will also
complement with /dev/video*.
- Treat camera read timeout as error and return detailed errors.
- Return io.EOF on Read after Close.
- Wait finishing video read loop to avoid memory violation
as the video frames might be alloced by C or on shared memory.
Resolves https://github.com/pion/mediadevices/issues/22
Created 2 new directories under driver, camera and microphone. Moved
camera_linux.go and microphone_linux.go appropriately. Imported
driver/camera and driver/microphone by default.