part of #1991, fixes running code for penalites

missing data migration to convert wrong records existant in db
Data migration + 0 -> 0.0
migration has outer loop by exam
constant memory
use Q objects to make queryset smaller
select_related to make less queries
reverting select_related, too memory intensive on staging
select_related on a smaller set--really trying to balance db and memory
Merge pull request #2003 from Stanford-Online/jbau-penalties-to-float

Jbau penalties to float