Support for extensions can now be queried from the device object in an efficient way. This will allow the backend to use optional extensions for the purpose of optimization.