Treat directory objects as not found

Make StaticWeb search for an index file rather than returning a 0-byte
object.

Add new StaticWeb header to identify a directory marker object:
X-Container-Meta-Web-Directory-Type (default to application/directory)
so user can specify the content type for directory marker objects.
This required requesting the container headers earlier in the code and
clearing the value of _error for non-404 errors.

Add unit tests for directory object scenarios.
Fix end tags in an unrelated HTML block.

Bug 1178817

DocImpact

Change-Id: I561f00c099feaa82fd658f5050bd90c76717da24
Swift tests for unicode headers

Swift functional tests sends ilegal headers (unicode) and expects
these headers to be processed by Swift.

Apache2 seem to remove such headers which is a sound behavior for
illegal headers.

This change restrict the test tpo exist only for swift integral
web front end. For future it is advised to disallow such behaviour.
For example it is suggested to make the decission that in future APIs
illegal headers are removed rather than processed.

Change-Id: Ibf548f474de3f06a2687f8f4812beaeaf81ab216
Fixes: Bug #1189123
Add branch coverage reporting

Except where the python-nose package version does not support the
"--cover-branches" option.

Change-Id: I9ea6452d9834b3ac414e14e628002f593dd4b8c8
Signed-off-by: Peter Portante <peter.portante@redhat.com>
Optional TCP_KEEPIDLE in unit tests

Allows to run unit tests on BSD-based platforms. The commit
da99c339 that solved the problem doesn't contain fixes of unit
tests.

Change-Id: Iff1771c1cbb37c30a888cd1da4fca5636e5797e7
Merge "Treat directory objects as not found"
Merge "Add branch coverage reporting"
Make TempURL more cache-efficient.

So, there's two cases here. In one case, we have memcache enabled;
account info gets cached in the usual place, and tempurl keys get
cached separately. In the other case, we have no cache. In neither
case is anything gained by having TempURL cache keys separately from
the account info.

This commit removes TempURL's custom caching logic and makes it rely
on get_account_info() instead.

Benefits include:
 * immediate visibility of new keys on account POST
 * less data in the cache per account --> more stuff fits in cache
 * less code for bugs to hide in

Change-Id: Idb0b6c165da14196b4c79149c546f0159b54edcb
Merge "Optional TCP_KEEPIDLE in unit tests"
Merge "Swift tests for unicode headers"
Merge "Make TempURL more cache-efficient."
version bump to 1.9.0 to reflect current dev target

Change-Id: Ia0a1b36ae90ed895dcc9876c016aaf261ad56674