Update period.py

proposed fix for #4699: Period() docstring inconsistent with code when freq has a mult != 1
DOC: added "Must be a singlular rule-code (e.g. 5T is not allowed)."
VIS: let scatter plots obey mpl color scheme (#3338)
Revert "Merge pull request #5058 from neurodebian/master"

Was mistakenly incorporated as a fix, when in reality it was a missing
skip test.

This reverts commit fd3acfdb5c0530cf78abd3c17276afc94a389d60, reversing
changes made to ec54354d8c09f0efc0811272655cb585fceadc58.
TST: Add skip test to excelwriter contextmanager
BUG: non-unique indexing in a Panel (GH4960)

TST: update Panel tests to iterate by position rather than location (for matching non-unique)
BUG/TST: Allow generators in DataFrame.from_record.

- nrows implementation doesn't allow unknown size iterator like
generators, if nrows = none ends with a TypeError.
- To allow generators if nrows=None consume it into a list.
- Add two tests of generators input.
- Add release notes for #4910
ENH: add functional (but pretty slow) json_normalize function for flattening nested records per #1067
DOC: io/v0.13/release notes
CLN: py3 updates
Merge pull request #4007 from pydata/PR_json-normalize-proto

Basic JSON normalization/flattening
Merge pull request #5097 from jreback/panel_dup

BUG: non-unique indexing in a Panel (GH4960)
Merge pull request #5095 from jtratner/add-skip-test-excel

TST: Add skip test to excelwriter contextmanager
BUG: fix DatetimeIndex join with PeriodIndex stack overflow
TST: add test for joining PeriodIndex with DatetimeIndex
CLN: remove unused imports
CLN: remove copying of PeriodIndex values on astype(int)
Merge pull request #5101 from cpcloud/fix-period-datetime-join-stack-overflow

BUG: fix PeriodIndex join with DatetimeIndex stack overflow
DOC: CONTRIBUTING.md: Gold plating: syntax, punctuation, Markdown
Merge pull request #5057 from JackKelly/master

DOC: proposed fix for #4699: Period() docstring inconsistent with code when freq has a mult != 1
BUG: Fix bound checking for Timestamp() with dt64 #4065

To fix the bug, this change adds bounds checking to
_get_datetime64_nanos() for numpy datetimes that aren't already in [ns]
units.

Additionally, it updates _check_dts_bounds() to do the bound check just
based off the pandas_datetimestruct, by comparing to the minimum and
maximum valid pandas_datetimestructs for datetime64[ns].  It is simpler
and more accurate than the previous system.

Also includes a number of small refactors/fixes to deal with new error
cases that didn't exist when invalid datetime64s were just silently
coerced into the valid datetime64[ns] range.