Refactor all parts to separate files
Add note that examples can be in every language