finished
added some additional tests. corrected error