Added coverage and restructured requirements