utility/view_tools : view detection without tag

- use a trait to detect view_type and non_view_type
- added a test
generalize dressed_iterator to forward iterators

- does not require any more to be birectional
- forward or birectional are fine.
- detected with a trait (works for STL iterator at least).