CheckAlive now monitors tracking nodes and redistributes the files if
tracking nodes are dead. Also modified the redistributeFile() function
in ClientProtocol to redistributeFiles(List<String>) - the function now
stores a list of files on the overlay rather than just one.   

Note there is an issue in Neighbourhood where some code is not in a
function(shappy)