Removes coercion to base-string and improves some use cases. Due to
recent change in double-quote reader (conformity fix), now type of
each read string is (simple-array character (*)), so when pathnames
were created, it were copying it to (simple-array base-char (*)), lead
to buggy results. Consider:
(let ((path
(let ((x "foo"))
(make-pathname :name x :type x))))
(eql (pathname-name path)
(pathname-type path))) ; => T
Before change, this construct was returning NIL, what in case of
serialization might be a problem, and wasn't `the right thing`® to do.
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>