Features for milestone 0.1 and full unittest coverage

With these commits, most of the features currently planned for milestone 0.1 is completed, and 100% unittest coverage has been reached.