Programming challenges from Eloquent JavaScript v2