Many updates on data source feature. Among others:
 - Saving the ID of the data source to the popcorn DB, and loading it when loading project from the DB.
 - Add support for projects with no data source.
 - Updating data source makes the project dirty.
 - Loading variables before selecting data source gives appropriate message.

Signed-off-by: ohanetz <o.hanetz@gmail.com>