Rewrite Cookie tests to be runnable and cover current behaviour

The cookie tests were all being skipped because headers are always sent
by the PHPUnit test runner (fixes kohana/kohana#47).

Additionally even when they ran they were covering very little of the actual
logic of the class, mostly just asserting that setcookie returns TRUE. Rewrote
the tests completely and slightly refactored the Cookie class to allow
mocking of the timestamp and setcookie calls.

Refs #547.
Reinstate skipped Security::csrf tests

These tests were disabled in 46e2ee9946 because they were generating
an error if headers had already been sent.

http://dev.kohanaframework.org/issues/4155

 This appears no longer the case - presumably the Session class or test
 configuration/environment has changed since then.

The tests could probably still be clearer and more comprehensive, but they
run.
Reinstate one skipped test for File::mime

These tests aren't great, and the PHP mime-type test is particularly likely to be
unreliable. We should be able to get a valid (eg image/png) result in all current
environments though for the moment.

Probably the File::mime method would be best reimplemented with some
third-party component, surely this is a solved problem by now.
Fix mocking for incomplete Session test
Rewrite Kohana::message tests for fragility and coverage

These tests were vulnerable to breakage if modules provide
their own validation message files, so were being skipped.

Fixed to use (hopefully) collision-proof message files with
known values and to cover a broader range of cases
including missing file and missing key.

Would ideally be further refactored to mock/have complete
control of the module search path outside global state.
Reinstate and improve Feed::parse tests

Original test was being skipped because it was hitting the internet
- the major relevant functionality here is the parsing rather than
the remote access.

Added local example feeds for RSS2.0 as well as the previously
tested atom feed. Also improved the tests to check for the title
as well as the number of elements since we now have known
content to work with.
Remove invalid skipped test - Response does send headers in CLI

This test was originally implemented in bf0175f6cd to fix
http://dev.kohanaframework.org/issues/3767 - it was required
because headers were sent directly by the response class, and
once they had been sent it was then very difficult to test other
variations. The fact that headers are not relevant in CLI appears
to have been a side concern.

Subsequently in a1943b0d7d26cf5a header sending moved to
HTTP_Header which mocks out `header` with a callback interface
for testing instead.

Since that refactoring (released in v3.2.0) the headers are always
sent in CLI unless headers_sent is already true.

Therefore this test is invalid and can be removed.
Merge pull request #552 from kohana/3.3/bug/reinstate-skipped-tests

Fix skipped/incomplete core tests for 3.3 series