Disney principled BRDF

- Implementation of Disney principled BRDF.
- Exposed the DisneyBRDF to OSL. 
- Renamed closure param structs to be more consistent.

![disney_brdf1](https://cloud.githubusercontent.com/assets/409013/3638828/fa0dc21e-1062-11e4-84bc-0dad1516dfe9.png)

![disney_brdf2](https://cloud.githubusercontent.com/assets/409013/3638830/ff2313bc-1062-11e4-8a3d-08d460370b20.png)

because MDF<T> is an incomplete type at the point the pointer is declared, I'd need the destructor in any case. In those cases, I just prefer to skip the dependency on auto_ptr.