My todo app just doesn't work. It doesn't even display any pre-existing todo tasks on screen. Nor is it able to add or remove any items. 
All it renders is the input form and submit button. 
Why is that? Please advise!

```
var app = angular.module('todoApp',[])
app.controller('TodoController',['$scope', function($scope){
    $scope.todos = [
        {task: 'Learn AngularJs', done: false},
{task:'Feed the dog', done: false},
{task: 'Water the cactus', done: true}]
    $scope.addTodo = function(){
        $scope.todos.push({task: $scope.todoText, done: false});
        $scope.todoText ='';
        console.log($scope.todos);
    }
    $scope.removeTodo = function(){
        var oldTodos = $scope.todos;
        $scope.todos = [];
        angular.forEach(oldTodos, function(todo) {
           if (!todo.done) $scope.todos.push(todo);
        });
    }

}])

<!DOCTYPE html>
<html ng-app="todoApp">
    <head>
        <meta charset="utf-8"/>
        <script src="bower_components/angular/angular.min.js"></script>
        <script type="text/javascript" src="todo.js"></script>
        <style>
            .done-true{
                text-decoration: line-through;
                color: grey;
            }
        </style>
    </head>
    <body >
        <div ng-controller="TodoController as todoList">
                <ul class="unstyled">
                        <li ng-repeat="todo in todoList.todos">
                            <input type="checkbox" ng-model="todo.done">
                            <span class="done-{{todo.done}}">{{todo.task}}</span>
                        </li>
                    </ul>
                    <form ng-submit="todoList.addTodo()">
                            <input type="text" placeholder="Add a new todo" ng-model="todoList.todoText">
                            <input type="button" type="submit" value="add">
                        </form>
                    <button ng-click="todoList.removeTodo()">Delete All</button>
        </div>

    </body>
</html>

```