Adding gnumake, converting all names to lowercase when comparing; updating comments and renaming functions for clarity.