Fix a race condition when tuner was destroyed while being used.

When GstVqe was executing push source callback, it was possible to
destroy a tuner from the other thread before any tuner specific calls
were made in the callback. Since tuner ID was not valid when further
tuner related calls were made and error was generated.

To fix this issue a proper locking was ensured.
Put more locking in.

Properties setters and getters are now also guarded by lock.
Report local channel states.

Implement local per-channel stats. Previously it returning
global stats for every channel. T
Merge pull request #3 from sqward/master

Fix a race condition when tuner was destroyed while being used.