Add tests for transform
Add triple function for testing purposes
Add test for indirect
Added flat_iterator and algorithm