extract string builder mathods to controller

it is better to concatenate and process the strings in the
controller to limit the amount of business logic that the
view model has to parse though. In this way we leave the
builder methods testable and transparent, exposing only the
finished data to the view model.