Support shmsrc (live source)

If the imported file is a socket path, we mark the media as "live". We
continuously poll for the socket path (in case e.g. it disappears / reappears).
As soon as the source socket patch exists, we connect a shmsrc ! gdpdepay
pipeline  (instead of a normal uridecodebin element for file-based media) and we
set the pipeline state to PLAYING (playAction button is not needed at the moment
for live sources, but we can change behaviour to only start the pipeline if
play is selected, like with normal file-based media)

In case of a GST_MESSAGE_ERROR, the polling function keeps looking for the
socket path until it exists again. The existing shmsrc pipeline is re-used
once the live source is transmitting again.

Tested with live source gst-launch-1.0:

gst-launch-1.0 uridecodebin uri=file:////opt/Videos/test.avi !  queue !
videoconvert ! video/x-raw, format="RGBA" ! gdppay ! shmsink
socket-path=/tmp/sock  shm-size=100000000

The live source was interrupted and restarted again, and the shmsrc in mapmap is
able to pick up the reappearing media stream.

Signed-off-by: Vasilis Liaskovitis <vliaskov@gmail.com>
Add .sock extension for live sources
Reorganized elements in window
Update read and write settings for new elements
Switch to paint tab when new paint added
Switch to mapping tab when mapping is added.
When mapping is changed, corresponding paint is changed
When paint is changed, unselect any mappings
Small fixes
Fix main splitter proportion
Main splitter gets all the extra width when window is stretched
Put some long method definitions in the .cpp
Introduced a property panel for paints and managed the case of color (disabling double-click feature in the process)
Merged latest changes from develop
Slightly better timer interval management (with global const variable).
Removed commented out deleteAction (minor change).
Added PaintGui for textures.
Integrated paint guis while removing remains of oldPaint/double-click system.
Adjustment to MappingManager::getVisibleLayers() so that solo-ed layers that are not-visible don't show.
In MappingManager::reorderMapping added some extra check to make sure we're sending an appropriate QVector<uid> (no repetition in the uids).