Added .gitignore file, and create a mini dependency injection frame work