Feature/ensight

This branch implements #296 and #305. It may also implement #297 before merging with develop