finished computerized adpative testing algorithm