matrix storage order can now also be row-dominant (choosable for each matrix separately)
map() moves from MatrixBase to Matrix
much more documentation/examples/snippets
diff --git a/doc/snippets/MatrixBase_adjoint.cpp b/doc/snippets/MatrixBase_adjoint.cpp
new file mode 100644
index 0000000..661803c
--- /dev/null
+++ b/doc/snippets/MatrixBase_adjoint.cpp
@@ -0,0 +1,3 @@
+Matrix2cf m = Matrix2cf::random();
+cout << "Here is the 2x2 complex matrix m:" << endl << m << endl;
+cout << "Here is the adjoint of m:" << endl << m.adjoint() << endl;
diff --git a/doc/snippets/MatrixBase_block.cpp b/doc/snippets/MatrixBase_block.cpp
index 0a1b6d6..d8a5ecc 100644
--- a/doc/snippets/MatrixBase_block.cpp
+++ b/doc/snippets/MatrixBase_block.cpp
@@ -1,3 +1,5 @@
 Matrix4d m = Matrix4d::diagonal(Vector4d(1,2,3,4));
+cout << "Here is the matrix m:" << endl << m << endl;
+cout << "Here is m.block<2, 2>(2, 2):" << endl << m.block<2, 2>(2, 2) << endl;
 m.block<2, 2>(2, 0) = m.block<2, 2>(2, 2);
-cout << m << endl;
+cout << "Now the matrix m is:" << endl << m << endl;
diff --git a/doc/snippets/MatrixBase_diagonal.cpp b/doc/snippets/MatrixBase_diagonal.cpp
new file mode 100644
index 0000000..005fba7
--- /dev/null
+++ b/doc/snippets/MatrixBase_diagonal.cpp
@@ -0,0 +1,4 @@
+Matrix3i m = Matrix3i::random();
+cout << "Here is the matrix m:" << endl << m << endl;
+cout << "Here are the coefficients on the main diagonal of m:" << endl
+     << m.diagonal() << endl;
diff --git a/doc/snippets/MatrixBase_dynBlock.cpp b/doc/snippets/MatrixBase_dynBlock.cpp
index 4fc6ace..edea29d 100644
--- a/doc/snippets/MatrixBase_dynBlock.cpp
+++ b/doc/snippets/MatrixBase_dynBlock.cpp
@@ -1,3 +1,5 @@
 Matrix3d m = Matrix3d::diagonal(Vector3d(1,2,3));
+cout << "Here is the matrix m:" << endl << m << endl;
+cout << "Here is m.dynBlock(1, 1, 2, 1):" << endl << m.dynBlock(1, 1, 2, 1) << endl;
 m.dynBlock(1, 0, 2, 1) = m.dynBlock(1, 1, 2, 1);
-cout << m << endl;
+cout << "Now the matrix m is:" << endl << m << endl;
diff --git a/doc/snippets/MatrixBase_eval.cpp b/doc/snippets/MatrixBase_eval.cpp
new file mode 100644
index 0000000..3769573
--- /dev/null
+++ b/doc/snippets/MatrixBase_eval.cpp
@@ -0,0 +1,12 @@
+Matrix2f M = Matrix2f::random();
+Matrix2f m;
+m = M;
+cout << "Here is the matrix m:" << endl << m << endl;
+cout << "Now we want to replace m by its own transpose." << endl;
+cout << "If we do m = m.transpose(), then m becomes:" << endl;
+m = m.transpose();
+cout << m << endl << "which is wrong!" << endl;
+cout << "Now let us instead do m = m.transpose().eval(). Then m becomes" << endl;
+m = M;
+m = m.transpose().eval();
+cout << m << endl << "which is right." << endl;
diff --git a/doc/snippets/MatrixBase_minor.cpp b/doc/snippets/MatrixBase_minor.cpp
new file mode 100644
index 0000000..5f9dc5c
--- /dev/null
+++ b/doc/snippets/MatrixBase_minor.cpp
@@ -0,0 +1,3 @@
+Matrix3i m = Matrix3i::random();
+cout << "Here is the matrix m:" << endl << m << endl;
+cout << "Here is m.minor(1,1):" << endl << m.minor(1,1) << endl;
diff --git a/doc/snippets/MatrixBase_transpose.cpp b/doc/snippets/MatrixBase_transpose.cpp
new file mode 100644
index 0000000..0a0586d
--- /dev/null
+++ b/doc/snippets/MatrixBase_transpose.cpp
@@ -0,0 +1,8 @@
+Matrix2f m = Matrix2f::random();
+cout << "Here is the matrix m:" << endl << m << endl;
+cout << "Here is the transpose of m:" << endl << m.transpose() << endl;
+cout << "Here is the coefficient (1,0) in the transpose of m:" << endl
+     << m.transpose()(1,0) << endl;
+cout << "Let us overwrite this coefficient with the value 0." << endl;
+m.transpose()(1,0) = 0;
+cout << "Now the matrix m is:" << endl << m << endl;