adding actual documentation and so many sweet features