Depends on the following issues being completed before this issue can be closed: --- - [x] #45 - [ ] #44 - [ ] #47 - [x] #48 - [x] #49 - [x] #50