Why Bluetooth profiles have to be registered first?

Hello,

I wonder from where comes the requirement to register Bluetooth profiles in order to discover them? And why it's possible to register only 3? Usually nothing like this is required in BT clients, and this limits usability of BT, as for example GoPro apparently requires to receive discover on all profiles in order to be successfully paired (not saying it's ok, but well, that's how it works, and the Garmin API is an unusual limitation here).

Is there any chance this will change in future releases of SDK?