Added a new test cases and did some cleaning up on the code so it is more readable and easier to use, I hope.