changed terminiology and moved class parsing logic