implement idisposable for the role concrete type and add license header for new files