csc(), sec(): Added missing functions to these trigonometric functions

Previous implementation of csc() and sec() was missing most of the methods
required to work with simplify(), eval(), rewrite(), series().
This implementation reuses partly the implementation of the functions in
sin() and cos(). This is done through an intermediate base class
ReciprocalTrigonometricFunction which csc and sec now subclass.
Removed unnecesary comment #
Solve documentation test error
- Review comments from Aaron and Sergey incoroporated
- eval() refactored from csc() and sec() to ReciprocalTrigonometricFunction
- eval_rewrite_*() modified to avoid rewritting to reciprocal, if
  reciprocal function cannot handle rewrite request
- added a few more tests
Added Pablo Puente to AUTHORS
Added class documentation to ReciprocalTrigronometricFunction
- Issues fixed: 3608, 4067, 4068.  Added test cases for them.
- Added ReciprocalTrigonometricFunction_eval_nseries()
- Fixed ReciprocalTrigonometricFunction._eval_as_leading_term(). This fixes sec() and csc() wrong series.
whitespace removed
Merge branch 'master' into 1475_sec_csc.
Fix merge problem.
Conflicts:
	AUTHORS
Rebased with master. Corrections after skirpichev review.
Merge branch 'master' into 1475_sec_csc
Renamed _is_reciprocal_even to _is_even.
Renamed _is_reciprocal_odd to _is_odd.
Added comment and TODO on _is_even, _is_odd.
Merge pull request #2551 from ppuedom/1475_sec_csc

issue 1475: Add missing functions to  sec() and csc()