Removed all the "os.listdir" based "checks"

* Per #15950 comparison against output of os.listdir is not a sane way to
test for existence of block devices.
Don't execute lsblk using absolute path

* Removed absolute path from lsblk call. Code already tests if lsblk is
in PATH, whichever lsblk satisfied that test in __virtual__ should be
the command that is called.
Renamed comps variable to cols for readability

I'm not sure what comps is short for, but this code is definitely doing
column-wise parsing.
Remove use of try/except for flow control

If the intent is to only extract the 7th column if it exists then it
makes more sense to actually test for the number of columns rather than
catch an IndexError which may occur at any of the 3 list index
operations within the try block.
Some improvements to parsing cmd output in list_

* Properly ignore "header" lines which indicate output in "CHS" or "CYL"
* Raise salt.exceptions.CommandExecutionError on unexpected parsing
	failures
* Always check for correct len of cols array before unpacking by index
Minor edit for lint
Merge pull request #16186 from rallytime/bp-16077

Backport #16077 to 2014.7