Change video content queries from media to element

Update the content api client from 2.0 to 2.3
Replace uses of MediaAsset and MediaEncoding with Asset
Fix indentation and prefer collect
Update tests for new ContentApi
Protect the Content class constructor

Prefer the Content companion object for instantiation.
Replace most media asset use with content-api element

Change Images trait to Elements, to include videos. Remove assumptions and rules for finding images in media assets.
Add Element class to frontend's model.
Use Content object instead of constructor
Add tests for element model

Change Element class inheritance structure to use traits.
Update Elements trait to support test requirements.
Include body video assets in videos list.
SigninController now handles rate limit errors

The SigninController does not yet defer its messages to the API so
I've special-cased this error.
Update SigninController to defer to API errors
ResetPasswordController now uses ID's SafeLogger

Log messages are now being sanitised. Also improves the logging for
the controller.
Use Either the distinguish between success and failure of getting a collection
Clean up some code around refresh of Query
Add logging for when a collection fails to update
Beta is now called Alpha.
Removed alpha/beta words from the opt-in mechanism, as these seem to change too often
Remove unused beta switch
Replace beta class with alpha
Add displayName to Block
Add displayName to collection
Add displayName to Collection for use in templates