added code to use the algorithms fill and iota if possible
others will follow