Correct extensions parsing.

Two problems were plaguing equality testing:

* ProtoFile had a ternary operator improperly scoped which resulted in precedence problems. As a result types, services, and public dependencies were only being compared when the package was not null.
* MessageType was not including the list of extensions in its equals check.