PUP-3336 split $libdir when updating $LOAD_PATH

As reported, $libdir can (but typically won't) take a multi-part
libdir.  This was being used wholesale in updating $LOAD_PATH, but
ruby have any special treatment, so would just have an invalid path in
$LOAD_PATH.

With this commit we split libdir when updating $LOAD_PATH, to ensure
we're updating each component correctly.
Sure, but there's code over in autoload where it's expected that it's a splittable path:

https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/autoload.rb#L145-L154
https://github.com/puppetlabs/puppet/blob/master/spec/unit/util/autoload_spec.rb#L41-L46