UPDATE: I realized where my confusion came from.
You can start a project with PCLs, then turn it into a shared project, but you cannot start with a shared project then add PCLs.
I understand the differences between PCL and Shared in Xamarin, as well as Xamarin native (iOS, Android) vs Shared. There is a great comparison on it here.
What I am not sure of, is if I can use PCLs and shared code in the same project. For example, if I want to work on a project which require a plugin, such as plugin.media, how can I also use blob storage, with the Azure.Storage namespace, if that requires shared code?