Working to resolve #16, #13, #17, #15