Testing

For unit testing nose has been chosen. All unit tests go into the tests package. Whenever new features are added, corresponding unit tests must be provided as well. New features, which do not have accompanying test cases are rejected.