function, opt and throwable tool additions
some gitignore files
updated classpath and removed warnings