Reworked shader model management.
Extended device capabilities.
Merge pull request #77 from kvark/caps

Device capabilities and the shader model