Bug fix: Don't raise an error in format_path() if $HOME isn't set
New functions: pluralize() and concatenate() (extracted from existing code)