updated several library files, mainly to use interfaces library and fix usage of exceptions library