I did it this way so that the user could create their own formatter but we fall back on a default if there is not one.  Does that make sense?  Would it make more sense to create a static default formatter and use that if priceFormatter is not set?