Made setup more flexible; documentation