Dynamically loads all drivers

This patch cleans up dynamic loading of drivers and adds dynamic loading
of block storage drivers