Closes issues #51, #61, #62, #63