more tests
handles unexpected inputs. resolves #4. can be improved. this is very basic.