better tests, more features and refactoring
added expect_exception and some refactoring
improved readme