updating the page generator and base view to work with razor helper functions

@NTaylorMullen 
Oh man, looking at the previous `WriteAttribute` implementations shows how the previous author got around params issue, pretty hack and not 100% fool proof.  I'd recommend making a helper object and just taking in a params so you didn't need to create tons of different overloads of the same WriteAttribute assuming no one will ever put "too much" into their Razor attributes.