Updated target API and gitignore, also added a few javadoc comments