Implement orientation option

Thanks to @monobasic (left/right) and @kosmotaur (top/bottom) for kicking things off.

Closes #364