Update remove shared file test to use right key
Transfer file in a zmq frame to allow binary data
Clear list of shared files only if we have it

When a service is removed, make sure we actually have a list of files
belonging to that service.  This is to prevent deleting a key from a
dict which is not available.
When receving file lists, update only when needed

If the shared file list received from a service is no different from
what we already have, don't do unnecessary updates to the remote_files
dict.
Be smarter when updating list controls

When a file list is updated, instead of clearing the control and
re-populating it, do the change based on the difference in the file
list.