Add emacs-version to magit-bug-report string + open a buffer

Signed-off-by: Damien Cassou <damien.cassou@gmail.com>
Add merge conflict seperator faces in diff view.
Allowing to select the remote and the branch pulling from.

This is a first stab at fixing issue #435.
Fixed a few typos.
Pass through git's log colorization using ansi-color-apply to translate into text properties
Add ERT as git submodule
Add mocker.el as git submodule
Add tests/run-test.el
Use tests/run-test.el from Makefile
Add .travis.yml
Removed an unused `format`.
Placed the options in the right place for `pull`.

Copying the code from `magit-push` was not possible because `magit-pull` is less flexible with its options.
For `magit-push` the options can be passed after the `repository` and the `refspec`.
However, at least for `--rebase`, `magit-pull` does not accept this format.
Removes some commented code.
Adds a dependency.
Uses the usual completion mechanism of magit for gitignore.
Cleans up the ignore code containing redundant code and doc.
Use a default value when asking for a file to ignore
Put the submodule command back on a key.
Updated the documentation to reflect the new submobule key.
Run magit-refresh-status-hook outside the macro creating the section

Otherwise, any section related function used in the hook will failed.