Allow aliases to items with slashes in them

I ran into a problem where I needed to alias a file to a string with a "/" in it. Unfortunately, the current behavior is to assumes that the alias destination should be resolved into a path.

I'm not sure why that behavior is useful, but proceeding on the assumption that it is, this patch checks to see if the expanded path actually exists before aliasing it. If it doesn't exist, it leaves the alias destination as is.