Feature/add basic tests

This is a new pull request in replacement the first pull request, I think the branch name is more descriptive, is not finished...