Added default text todoListView's input text box for adding Todos

What I did:  Added "type in todo message here" to the add todo text field.

what I learned:  the value attribute of an html input of type text is where to add text.
Added a completedFilter function to todoListView to identify todos that have been completed.

The completedFilter's job is to take in a todo and check if it has been completed.  If it has, completed-filter will return it si that it can either be rendered or passed through some other filter.  if it is not completed, the function returns null.  Basically it filters out todos that are not completed.

What I learned:  Finding the smallest possible step to implement a feature is hard.  Really hard.  I spent all morning deciding  figuring out that the first thing I needed to do was have a way to choose which todos I wanted to render.  So it makes sense to dump it through a function and see what comes out.
Added a flag for wherher the todo list view will show only completed todos

What I did:  added a flag for what way I want to filter a list.  This flag is for turning on the filter so that the todo_list_view only shows completed todos.

What  learned:  nothing of note.
Edited render function to add a filter based on flags

What I did:  edited thre render function so that if the show_only_completed flag is set, it would only bother to render the todos that are complete.

What I learned:  This is a messy addition to the render function. It is full of state.  I'm ure there is a better way to do this.
Added a toggleShowOnlyCompleted function that toggles the showOnlyCompleted flag on and off.

What I did:  This toggles the flag on and off, and the render function uses the flag to determine what to render. it also triggers the render function so that the only todos that are shwn are the ones we want.

What I learned: I probably should not have made this a toggle.  I do not feel good about any of the code I have written today.
changed toggleShowOnlyCompleted to turnOnShowOnlyCompleted, and had it only set show_only_completed flag to true

What I did:  changed the toggle to a turn on because this function will be called when we push a button to turn it on.  toggle is not needed at this point.

what I learned:  Right now, I'm writing tests by working backwards.  I'm working form the change in the render function out to the button, making sure every link in the chain works, and writing a test for each link in the chain.  Trouble is, my nose is wrinkling, and I think most of what I've done to build this feature is a code smell.  Ick.
Added a link that, when you click on it, shows only completed items on the todo list.

what I did:  Added a link to the bottom of the view that triggers the filter completed items functionality.
Fixed missing class name in todo view template in index file
refactoring filter flag so that instead of show_only_completed being a boolean, it is called filter and contains the name of the filter being used.

What I did:  I made this change because I was about to add another feature for showing only the active items in the todo list, and I was going to add another flag for filtering active items.  Then I realized that when my activeItems flag was true, my completed items flag would needto be false and vice versa.  I dd not want to have to code in code to turn off other flags when certain flags were active, so now I am assuming that only one filter will be used at a time and the filter flag will store the name of the filter being used.

What I learned:  Tests make refactoring much easier.
Fixed tests to work with new filter flag

What I did: changed tests in todoListView spec to work with new filter flag.

What I learned:
I should have changed the tests first before changing the source code.  Oopse.
Moved the if satement that chose which filter function to use out of the render function and into it's own function called filter

What I did: I had an if statement that choses the filter function based on what the filter_name is.  It w in the render function.  That if statement needed to be it's own function, so I moved it to a function called filter.
Added function for filtering todos so that only active todos pass the filter.

What I did:  created and tested activeFilter function, which takes in a todo and returns it if it is active (i.e not completed) and returns null if not.
Added a test to see if I could set the filter_name flag to shown_only_active

What I did:  checked if I could set the filter_name flag to show_only_active
added the activeFilter function as a choice in filterFunction

What I did:  made it so that when filter_name was set to show_only_active, the filter function woud oute odos through the activeFiter function.
Added function turnOnOnlyShowActive in todoListView which sets the filter_name to only_show_active and rerenders the view
Added link to ui that calls turnOnOnlyShowActive when pressed.

What I did: this wires up the whole filter list so tht it only shows active items process.
Created filter_name show all to show all items in the todo list instead of filtering them.
Modified filter function to include show_all filter.
Added function to turn on show_all filter