updated pool model and tests
updated program model and added tests