Encapsulate inherited item permissions as their own class.
General cleanup and method parameter reordering