New file structure, documentation, add license