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)

You'll need to include `foundation/math/scalar.h` for `foundation::square()` to be defined.