rearrange structure
add gitignore