>Should this be a separate class that could be used by multiple apps?

Chris, what potential class are you thinking of here?