Clean up WikibaseValueFormatterBuilders and related

This is a direct follow up to I4261b3d.

* Type hinted against TypedValueFormatter interface instead of
  implementation in PropertyValueSnakFormatter.
* Specific type hints in WikibaseValueFormatterBuilders for private
  methods, generic ValueFormatter type hints for interface methods.
* Moved the new test in WikibaseValueFormatterBuildersTest up.
* Added type hints.
* Cleaned some @throws and @see tags.

Change-Id: I77186efbf4aa2e3fe12c0d9c75bac17dc6006ed7
Merge "Clean up WikibaseValueFormatterBuilders and related"