Bug fixes with filewalk and refactoring

The unique id generator was creating too many collisions so modified it
to be more unique by using full path to seed first hash of id. Also
refactored various areas of the code. Also fixed a bug with files that
have commas in them