revised content based on suggestions by Petri & Sami
added some preliminary content to implementation