adds some interfaces and classes