Fix annotation highlightings on the first line of C-style comments

Consider the following code:

    /* @brief This is a function.
     * @param $foo Means something.
     */

Both annotations beginning with at-signs should use the same syntax
highlighting.  However, php-mode does not highlight ‘@brief’.  This
happens because of an issue with php-annotations-inside-comment-p.
We use that macro to determine if we are inside of a comment; more
specifically, it tells use what font-face a character has at a certain
position in the buffer.  If a character is using the face
font-lock-comment-face then we assume that character is inside of a
comment, and from there we search for annotations like ‘@brief’.

The problem is that the comment in the example above a second face we
do not test for: font-lock-comment-delimiter-face.  All of the
characters before ‘@brief’ use this face, including the whitespace.
So our macro does not recognize that we are inside of a comment until
we have already reached and passed ‘@brief’, and since we only look
ahead in the buffer from that point to find annotations we never move
backwards to actually highlight ‘@brief’ properly.

We can fix this by simply making php-annotations-inside-comment-p
aware of font-lock-comment-delimiter-face.  Then our code for
annotations will recognize the start of comments earlier and correctly
highlight the example above.

Github-issue: 58
Use `c-add-style' for specification of coding styles.

This will allow more reuse of the style support of `cc-mode'.

Signed-off-by: Eric James Michael Ritz <lobbyjones@gmail.com>
Update php-mode-modified for changes to annotations and styles
Add Daniel Hackney to the list of contributors
Create ERT-based test for issue #9.

This allows regression testing without needing manual inspection.
ERT test for issue #8.
ERT tests for issues 14, 16, and 18
ERT test for ejmr/php-mode#19
Require `php-mode` in `php-mode-test.el`, duh.
ERT tests for remaining example files.

This should close ejmr/php-mode#60
Mark tests 9, 14, and 19 as expected failures.

This makes all tests pass or fail expectedly for the current version. As bugs
are fixed, the expectation of failure can be removed.