Heuristics

@arturopie I was stubbing the File.new to return nil if file does not exist in my tests. It seems like a bad idea now that I think of it. I'll change this.