Move methods around and stub out some new ones
Added tests for TodoList.append, TodoItem.append and fixed return vals
Develop branch Travis image
Implemented Item/List.prepend, removed ^Ms and fixed append

Append had an overriding declaration at the bottom of the file.
Added some notes to README and dos2unixed source files.
Add List/Item.deprioritise
Add TodoList.remove. Project/context indexes point to ids, not indexes

Indexes are as follows (where list_index = index of TodoList.items):

TodoList.indexes.id = { id: list_index }
TodoList.indexes.project = { project: [ id [, id] ] }
TodoList.indexes.context = { context: [ id [, id] ] }

To get an item from a list of project ids, use TodoList.findById(id).

Also added TodoList.deindex(item) to cleanup the index by removing
references. Will prune empty project/context indexes as they become so.
Fix test syntax
Add task completion using TodoList.do()
do is a reserved word in JavaScript (do..while)

We'll use complete instead. It worked but jshint complains (and it's
probably a bad idea).

Also fixed two minor equality checks to use ===.
Remove @todo on TodoList.complete
TodoList.replace()
Prioritise a task using TodoList.prioritise(1, 'A')
Project & context lists and list-all-tasks helper
Add a de-duplicator and update remove() to re-index the list by ID.

The list needs to be re-indexed we really delete from the list, rather
than setting to undefined/null.
JSHint: missing semicolon [ci skip]
Run more tests
Bumping version