-structured the af and drel features
-TODO: revert the empty list validation to exceptions because exceptions are way cooler! =D