[TESTS] [HOTFIX] correct error in auth cache test
Fix badrecord error in EXIT handling

The second item in the by_pid tuple is the name not a #db{} record.
Restore rev handling for _bulk_docs with all_or_nothing

Commit 5b1430c120904181313848444dbfcdb60e42568b added this hunk;

-        {aborted, lists:map(
-            fun({{Id,{Pos, [RevId|_]}}, Error}) ->
-                {{Id, {Pos, RevId}}, Error};
-            ({{Id,{0, []}}, Error}) ->
-                {{Id, {0, <<>>}}, Error}
-            end, PreCommitFailures)};
+        {aborted,
+         lists:foldl(fun({#doc{id=Id,revs={Pos, RevIds}}, Ref},Acc) ->
+                         case lists:keyfind(Ref,1,PreCommitFailures) of
+                         {Ref, Error} ->
+                             [{{Id,{Pos,RevIds}}, Error} | Acc];
+                         false ->
+                             Acc
+                         end
+                     end,[],Docs3)};
+

This causes the full list of revisions to be passed to revid_to_str/1;

revid_to_str(RevId) when size(RevId) =:= 16 ->
    ?l2b(couch_util:to_hex(RevId));
revid_to_str(RevId) ->
    RevId.

This falls through to the second case, which in turn leads to invalid
JSON output when we convert the presumed iolist.

This patch restores the code that takes only the head of the revisions
list when present, and an artificial "0-" when it is not (in the case
that the validation fails for a new document rather than an update).

BugzID: 1772
Spacing nits
Add live CouchDB version info to Fauxton
docs stuff
Merge remote-tracking branch 'upstream/master' into 1829-User-Experience-Redesign

Conflicts:
	src/fauxton/app/modules/databases/routes.js