fixes #59 by checking that days*newspapers < 500, also refactors some stuff into Media model (DRY)