File Specificity Overhaul

I agree that `/$platform_family/$source` would be more useful.  However, there is a wrinkle. The addition of '/$source' is at the end of the lookup path, effectively meaning that all existing cookbooks will continue to operate the same with the exception of cookbooks that would have previously raised an error.  The addition of platform family would likely be somewhere in the middle of the path, and likely before '/default/$source' if it is going to be useful.  This makes the change less backwards compatible.  Consider, for instance, a person who had a platform specific file for 'debian' but was using the default for 'ubuntu'.  The addition of platform_family would mean that the ubuntu machine would start getting the debian file.