Composer integration, restructure, .gitignore