MakeParser: Better parsing based on gnumake manual

The gnumake manual states that the make errors start either with
a make executable or a makefile, followed by a message.

This message starts with "warning: " for warnings and with "*** "
for fatal errors. Normal errors have no prefix.

This patch should make sure all these are recognized and also
simplifies the code a bit.

It also adds a new unit test for the lines starting with a Makefile.
That one addresses QTCREATORBUG-10576.

Task-number: QTCREATORBUG-10576
Change-Id: Ib3ef2ff5e324e773d7e78bb148bf09e9875b985e
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>