Bug 906316 - Don't download the xulrunner SDK each time we change a branch if their configuration are different r=yurenju,asuth,ochameau

This also shows a message when the archive file seems to be corrupted, advising
to run "make really-clean". Also changed "make really-clean" to remove all
xulrunner related files.

We now uncompress the archive directly in a specific directory that should
change when we change the URL.

We use a dot file inside the xulrunner SDK directory to keep the URL used to
download that SDK.

Now we can also define XULRUNNER_DIRECTORY from the command-line. If not
defined, it will use the default xulrunner-sdk-26/xulrunner-sdk.
We can also define XULRUNNER_BASE_DIRECTORY which is the place where the
XULRunner SDK will get uncompressed.

We export the new XULRUNNER_DIRECTORY variable along with the
existing various xulrunner program paths. These paths have been made absolute
using make's `abspath` operation.

The patch also removes the ./ prefixes to those paths as they're likely useless
and prevent from using an absolute path when defining XULRUNNER_DIRECTORY from
the command line.

This patch also remove the email's build_stage directory when running "make
clean".

This _will_ make all devs redownload XULRunner, sorry.

This make the build fail if submakes fail

Also add documentation at the top of the Makefile.

(cherry picked from commit f6df42dddb0ef62c64d90d9ca06fba779ea6cd78)

Conflicts:
	Makefile
Merge pull request #13503 from julienw/906316-1.2-uplift

Bug 906316 - Don't download the xulrunner SDK each time we change a bran...