updated JSON output to reflect component availability

Changed the JSON output to work with the "state" of the componenet
(available, unavilable, alternative) instead of by version number.