improve specs, work on error handling

example of one way to do error handling...