'required' trait implementation
Merge pull request #81 from dams/feature/required2

'required' trait implementation