Greatly improved the documentation