dont use post file upload for cover uploads
check cover upload file size against new setting
store cover uploads in profile folder
use `uid-profilecover` filename for cover uploads
Also added a number of fixes for mobile enhancements, such
as serving a manifest.json file for Android devices, and
serving proper link tags for all uploaded touch icons.
This commit also creates a new template helper for link tags.
1. filename cannot contain ':' (at least on windows), nodebb crashes with such filename
2. lwip cannot define image type without file extension
Also added image extension check to prevent security issues