Changed preferred_representation to representation in method's docstring.
Changed the representation setter-getter tests a bit.
Working on SkyCoord initializer tests.
Added testing for unavailable attributes in a particular representation.

Tested in both spherical and cartesian representations for ICRS.
Fixed a little mistake where I'd written icrs.lat instead of icrs.ra, and so on.
Added tests for `data` object.
Checked whether it remains the same whenever representations are changed.
Started work on SkyCoord+Frame initialization tests.
Using frame ICRS.
Added tests for positional inputs to SkyCoord.
Parameterized the test function with inputs from a list.
Dealt with Quantity, list/numpy array and others cases differently.
Quantity is iterable, and so, had to make a separate if branch for it.
Added tests with keyword arguments in similar vein as previous commit.
Decided to place the keyword arg version in a different method even though it is essentially the same.
Added testing for string input.
Used the logic present in _parse_coordinate_arg() to break the string into arguments.
Added a _break_string_arg() (need to know if advisable) which captures this logic.
Added an if branch for the string arguments. Used Longitude,Latitude classes to wrap over them with unit="deg" (otherwise UnitsError was thrown).
Removed the repr tests as they may not be guaranteed to pass on all systems.
Representation tests
Remove unneeded six import
array -> asarray as suggested by @mdboom
Updated tests following @neothemachine's suggestions
Merge pull request #2571 from mhvk/quantity-output-from-non-quantity-input

With quantity output, ensure non-quantity input is treated as dimensionless
Merge pull request #2616 from larrybradley/opdeps

Importing optional dependencies
documentation updates in coordinates
Merge pull request #2586 from taldcroft/coordinates-preferred

Included some additional minor fixes by @eteq post-PR
Added missing mention of represent_as in coordinate docs
Bring back helpful error message when ``.data`` is done on a data-less frame
Make SkyCoord creation fail if data is not provided
Merge pull request #2620 from eteq/fix-sky-coord-init-nodata

Fix sky coord init nodata
Added option to use representation names in represent_as