interface package improvements as per instructor's feedback
abstract package improvements as per instructor's feedback