added License headers
added JavaDoc comments to public methods