Some core interfaces are added. These interfaces form the main foundation of the application and they are the great support to implement dependency injection.
Git ignore file is changed.