style: code cleanup
refactor(NgValue): use the @NgDirective module feature

- Use the @NgDirective module feature to inject an NgValue
instance into OptionValueDirective and InputRadioDirective when
no `ng-value` attribute is present. This results in a much
cleaner design.
- Update `ng-value` API documentation.