Extract the individual location component of the locations view into a partial
Revert "Remove the empty LocationsHelper"

This reverts commit 260c04894c64c8c823596b60b7d530e439a3b970.
Add a LOCATIONS_PER_ROW setting to the LocationsHelper and use it

This makes it easier to change the number of locations per row on the fly, since
the helper can calculate location width instead of the views.
First attempts at aligning the location name backgrounds on each row

This usually works, except for the following issues:
- the name backgrounds are a bit taller, even though they should have the same
  height as the info backgrounds
- it seems like every row is the same height, even if the extra space is not
  needed
- text sometimes overflows, especially in the info