opaque-keys: Adds support for opaque keys

Inspired from https://github.com/edx/edx-ora2/pull/330
Properly serialize OpaqueKey in light_children
pep8
Merge pull request #46 from dragonfi/opaque-keys

Move to use opaque keys