code refactor
Some more documentation and the latest updates.
Fixed compilation of module, samples are still broken.
Fix return type