added dependency handling, automatic require for denepndant modules