Mainly fixed documentation and coding sytle