Add opal extension

Closes #48