Merge pull request #184 from dfrg/multi-surface

Separate Instance and Surface creation in HAL