Infrastructure updates - get_local_path, browse & delete in Spaces, etc

Several infrastructure and miscellaneous updates in one, coming from AIP reingest work but independent of it.

* ```browse``` and ```delete_path``` are now implemented in protocol spaces, instead of in Space or Package, as they are very dependent on the protocol and should be handled by the appropriate space.
* ```full_path``` and ```full_pointer_file_path``` are now ```@property```'s, since that's effectively  what they are
* Added ```get_local_path``` to help work with packages that are not store locally, but need to be worked with locally.  As the name implies, gets a local path for that package - either the actual local path, or by copying it to the SS internal location
* Pipelines store some pipeline API information so they can call pipeline APIs
* ```compress_package``` accepts an algorithm parameter
I like that idea - fetch most of the time, but expose the ability to decide not to if it's expensive.

I'm hesitant to call it ```copy_to_local_path``` since it may not return a copy (if it's found locally) and I don't want originals getting deleted accidentally. If you want a guaranteed copy, ```extract_file``` does that (somewhat oddly, now that I think about it. If local and uncompressed will copy it for sure, otherwise returns uncompressed copy). Though, extract_file calls get_local_path...

Maybe ```try_local_path``` which returns local path or None (or raises an exception?), and ```fetch_local_path``` which always returns a local path (calls check_local_path, may be the original copy).