Add support for Imagick if present

Imagick is faster and more memory efficient than GD but less commonly installed. This uses Imagick if present otherwise falls back on GD. This may help reduce out of memory errors on larger images.
Added check for whether value was false to eliminate two false values making checkboxes set to true
Fix escaping strings for JavaScript

The correct way to pass strings from PHP to JavaScript is json_encode.

Using addslashes or htmlspecialchars(..., ENT_QUOTES) may lead to
unexpected issues.
Declare some local variables

Let's avoid creating global variables
sort language names with natcasesort because they are mixed case
Ignore build/npm-debug.log
Update Single Pages dashboard controller to pass error codes rather than error messages
Fix messages in dashboard/pages/single

Let's use the standard message/error handling
Fix mysql error when attempting to remove blocktype from deleted page

Thanks to @korvinszanto for helping with this, if a page somehow becomes deleted and the blocks still exist, when you attempt to remove the block, Block::getByID() tries to find the page and blows up with pretty mysql errors.
Adding in is_object just for the hell of it
Fix downloading invalid files

If users request an invalid file an unhandled exception occurs since we're
trying to track download statistics.
Let's abort execution if the requested files couldn't be loaded.
Show download url in file properties form

Sometimes it may be useful to know the download url of a file:
let's show it in the file properties form
Use default site language when adding users

When we create a new user via the UI, let's pre-select the default locale
Use current user's language when adding users

When we create a new user via the UI, let's pre-select the current
user's locale
Show download URL as text instead of link
Add getPageDisplayName/Description

So that we don't have to remember to call t() and h()
tweak
Merge branch 'master' of github.com:concrete5/concrete5
Merge pull request #1632 from mlocati/fix-newuser-locale

Use default site language when adding users
Merge pull request #1628 from Mnkras/patch-3

Fix mysql error when attempting to remove blocktype from deleted page