Fixed RenderList move constructor and move assignment

Visual Studio 2013 doesn't yet support explicit defaulting of
move and move assigned operators, so method bodies were
created.

Also added a logic fix in component creation not checking if the
component was in fact valid before attempting to add it to a system.

Updated shader assets.

Container now returns a default object if value_holder is a nullptr.