Closes #16; passes tests: , , ; adds matching alternative cases for literals