starting to split the whole thing into a number of files
global commands added and split into files