Removed references to interfaces so that we can get there naturally in the demo
Modified to be a better start, removed dependency injection