refactor autoloader and move interfaces diorectory
autoloader now reads a directory recursiv, so the interfaces directory
can be moved to the classes directory
add docccomment