Initial commit
Added readme text
Many refactorings.
Merge