Grab file level documentation from the first comment from the first
node.
Merge branch 'develop' into filelevel-docs
Improve file-level documentation resolution.

 * Skip inline HTML nodes to find the node containg file-level DocBlock
 * Only collect a comment if it's DocBlock (T_DOC_COMMENT) and the first
   in the file. Then check if it precedes another DocBlock, or has a
   @package tag and doesn't precede a class declaration.
 * Add the event dispatcher to the FileReflector class
 * Add a few getters to FileReflector to stop fatal errors
Fix failing unit tests.
Add tests for file level DocBlock.

Tests check that the appropriate warnings are raised when file level
documentation is invalid/missing. Example files are taken from
http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_phpDocumentor.quickstart.pkg.html#coding.phpcomments.warnings
Add warning if file level DocBlock is missing @package tag.

Also don't bail early from FileValidator::isValid() if a documentation
error is found. This allows all errors to be caught at once.
Merge branch 'develop' into filelevel-docs
Don't output a warning if file DocBlock doesn't contain a @package tag.

Also change instanceof to get_class() as all subclasses are instances of
ClassValidator.
Stop shared DocBlock when file level documentation (with @package)
precedes anything other than a class declaration.

The DocBlock is removed from the $comments array and put back into the
node so that it's not accidentally reused. Also we always update the
comments array so that standard comments (/* */ and //) are removed and
do not stop documentation of elements, see no-package-precedes-comment.phpt
Allow for (multiple) interface inheritance.

Interfaces can extend many other interfaces, so the "extends" property
is an array and cannot be cast to a string. Introduce
getParentInterfaces() for interfaces and move class specific behaviour
to ClassReflector and ClassExporter.
Re-index comments array after array_filter()

Prevents a notice when the first comment in a file is non-DocBlock.
Merge pull request #493 from joncave/interface-inheritance

Interface inheritance
Improving documentation
Define statement incorrectly show the constant definition and namespace

This has been fixed by tweaking the define statement parsing; this lacks
namespace information because it is an expression and not a statement.
This has now been added
#492 Applying contributed patch by @hschletz to fix issues with external documentation

External documentation was only accepted if there were multiple due to a quirk in the way
XML files are read. @hschletz offered a patch which we have applied in this commit
Merge branch 'develop' of github.com:phpDocumentor/phpDocumentor2 into develop
#476 Strip all binary characters from the long description

Some projects have binary characters in their long descriptions. This is not
accepted by XML (not even in a CDATA). As such we strip the binary characters
as they offer little value and otherwise would have gotten lost after transformation.
#495 Installer is the easy second install option.
Remove warnings in installer for unset array index and removal of dot files.
Introduce ReflectionAbstract.

Reduces duplicated code in BaseReflector and FileReflector.