WIP on text editing: new text contents replace old

Editing the text can now replace the text contents as well as the
title (feedback from users says this is a desired feature), but
there's currently a problem where if the text contents are empty,
it clobbers the old contents. (Intended behavior is that if nothing
is entered in the "new text contents" area, keep the old contents.)
Merge branch 'master' into feature/questiondto

There have been some major changes in master, so we should merge them
in and fix up any problems before proceeding.
WIP on text editing: texts can be properly edited

Text content editing now works properly: if the text content editing
area is left blank, the old text is left intact. But if new text is
entered, it replaces the old text.

Next up: making sure rights are properly integrated into this editor.
Add ability to edit text contents as well as title
Merge branch 'master' into feature/questiondto
Remove some debugging console.log calls
Fix up post-merge problem with adding new answers
fixed google groups link on discuss SF page
Merge remote-tracking branch 'origin/master'
Fix up typeahead in project settings page.
Fix UI experience of typeahead in project settings

Now the button will change from "Add New" to "Add Existing" when a
user is selected.
Simplify typeahead API quite a bit

Instead of using & binding for the search and query functions, which
leads to needing to call them with a slightly complicated process (we
have to pass parameters using a Javascript object, and the HTML code
that uses the directive needs to know what name we gave the properties
of that Javascript object), using a = binding for these functions means
we can call them inside the directive code just like normal Javascript
functions, the HTML code doesn't care what names the parameters have,
and the API is just generally improved all around.

To change existing code to use the new API, replace 'search="foo(term)"'
and 'select="bar(item)"' with 'search="foo"' and 'select="bar"' in HTML.
Fix keyboard interface for typeahead control

The keyboard part of the interface was actually working perfectly; what
was wrong was the UI elements that displayed the highlight. First, the
active class needed to have a background highlight color, and second,
the directive needed to stop clobbering the "items" list passed to it by
the calling code. Finally, the calling code needed to pass the list of
items (which would be set by the search function) rather than an individual
item: e.g., "users" instead of "user".
Minor HTML tweak to question page

According to http://stackoverflow.com/q/3558119/ the <i> tag is not
one of the tags that is allowed to use self-closing syntax, which
means that <i class="icon-foo" /> is equivalent to an open <i> tag
with no closing tag, if the HTML 5 rules were strictly followed.
Most browsers will do the right thing, but it's still not quite in
compliance with the spec -- and since at least one of my editing
tools is complaining about the non-compliance, I'm fixing it.
Add cancel link for answer, comment editor

This could also be implemented as a button. I chose to make it a
link because the visual difference is greater that way. That's also
how StackOverflow does it, probably for the same reason.
Use plain (not rich) text editor, to edit comments
Clear new answer/comment editor after submit
Change "Settings" btn to "Update" for project/text

Fixes #51
Replace small image logo in header with text logo

Also line up text logo so that menu no longer moves left or right,
not even by a single pixel, when switching between static and
dynamic pages. (The menu does move about 10-15 pixels to the right
as the dynamic page is loading, but settles back into the correct
position once the page is fully loaded.)
update the reset_db php script