Allow to upload to an specific asset.

Right now it is possible to upload to different assets.

Additionally, a new method has been added to return the extension of the file.
Upload to a specific asset if this argument is passed
Upload avatars to the asset='user'
Refactor

Rename all asset vars to container
Use container as the folder for storing user data.

All associated data with the user will be stored under *user_ID*. In this case,
the avatar will be always named as "avatar.png" and saved as a PNG.

This fix allows us to store as many objects as we want per container (this is
needed for Cloud based solutions).
Update the user.info with the new container format
Use new theme fixes