DOC: Clarify that step's system parameter is a tuple of array_likes

also reorder parameter docs to match function's ordering
BUG: Docstring claims to accept array_like for T, but does not

Tries to call T.shape, but this produces

"AttributeError: 'list' object has no attribute 'shape'" etc.

change so that it explicitly converts to array
MAINT: Remove U = zeros_like(T), since that's already lsim2's default when U=None
DOC: Remove a comment redundant with nearby docstring,
change a comment to docstring,
spell check a comment, add TODO to a comment
TST:Create tests for step and impulse based on tests for step2 and impulse2

Didn't copy tests that pass for step2 and impulse 2 but fail for step and
impulse, though these should probably be addressed at some point
TST: Add tests for step/impulse/step2/impulse2 for accepting array_like without errors
BUG: fix a couple of bugs in signal.ltisys
TST: de-duplicate tests for signal.ltisys
TST: add regression test with complex input for signal.step.

Note that step2/impulse/impulse2 don't work with this input (see gh-2654).

When unifying step/step2 and impulse/impulse2, a decision should be made on
whether complex inputs need to be supported.
Merge branch 'pr/2654' into master.

See https://github.com/scipy/scipy/pull/2654