- added documentation
- changed Vectors to synchronized ArrayLists