added owner feature, added some javadoc