Simplifying CollectionInterface. Making it an actual interface to build other components on top of.
Moving CollectionInterfaceException into its own class file.
Rewriting interface to make it... ummm... you know... an interface.
Moving interfaces to proper directory.