Eliminate coupling between tests

I don't think tests should depend on the same sample file, even if it's
an empty one.
Refactor SourceLocator test

Just make it a little more consistent with the other tests.
Move method around

This method is a view helper so it should be at the bottom of the
Generator class.
Refactor CodeIndexGenerator

It now receives source_pathnames instead of file_generators. The logic
of passing generators to other generators was too confusing. A generator
should do only know a few things:

* How to render itself

* Where it should be rendered
Reduce code duplication

Merge two identical view helper methods into a single method and place
it in the ViewHelpers module.
Show smells count in the code index page