Fix and refactor manifest parsing

Fix a CMS signature reading expected token.
Fix the necessity of a empty line in the end of the manifest.
Implement CMS signature, Source checksum algorithm and digest reading.
Indicate the line number and content when a manifest error occurs.
Remove unnecessary recursive reading.
Centralize manifest tokens.
Improve tests by checking the expected error.
Document the code.

Change-Id: I7d12020d8922fc5d4c8d9f238557dfbcc0b65757
Issue-ID: SDC-2563
Signed-off-by: andre.schmid <andre.schmid@est.tech>
diff --git a/openecomp-be/lib/openecomp-tosca-lib/pom.xml b/openecomp-be/lib/openecomp-tosca-lib/pom.xml
index 33f5168..9029efc 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-tosca-lib/pom.xml
@@ -61,6 +61,18 @@
             <version>${logback.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.hamcrest</groupId>
+            <artifactId>hamcrest</artifactId>
+            <version>${hamcrest.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.hamcrest</groupId>
+            <artifactId>hamcrest-library</artifactId>
+            <version>${hamcrest.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <scope>test</scope>