(Model) Add a new port modifier "unused".
(Model) Automatically adds modifiers to ports of inserted fork/join/broadcast/roundbuffer vertices during hierarchy flattening and srSDF transformation.
(Model) Special processing for modifiers of roundbuffer ports during flattening and srSDF transformation.
(Model) Remove annoying println
(Model) If an implicit Broadcast is added, set its port modifiers to Pure_in and Pure_out
Correct Bug on BRV computation when implicit broadcasts on interfaces
Correct bug on BRV computation for unconnected actor
(Model) Bad copy paste in AbstractVertex
(Model) Interfaces were not copied when SDFBroadcastVertex were cloned.
(Model) Add ports to the broadcast and roundbuffer when flattening hierarchy.
Big refactoring of SDFHierarchyFlattening.flattenGraph and SDFHierarchyFlattening.flattenVertex to cut off long methods.

Added methods:
-prepareGraphHierarchy, which calls prepareHierarchy on subgraphs of a SDFGraph
-flattenVertices, which calls flattenVertex on subgraphs of a SDFGraph
-copyVerticesFromSubgraphtoSupergraph, copyVertexWithPropertiesAndArguments, copyEdgesFromSubgraphToSupergraph and copyEdge which job is to move elements (vertices and edges) from a subgraph to its supergraph
(Algorithm) Format source code.
(Algorithm) Add ports to broadcast and roundbuffer when flattening hierarchy.
(Algorithm) During single-rate transfo, add ports to existing fork/join/roundbuffers/broadcast when adding new edges.
Refactor of the flattenGraph method from a recursive method to a for loop on the depth of the flattenin.
Refactoring of treatSinkInterface method. Added methods addRoundBuffer and addImplode.
(Algorithm) During Hierarchy instanciation, fork/join ports are created.
Merge branch 'develop' into preesm-issue3

Conflicts:
	eclipse/plugins/org.ietr.dftools.algorithm/src/org/ietr/dftools/algorithm/model/sdf/visitors/SDFHierarchyFlattening.java
Refactorin of the treatSourceInterface method. Added methods addExplode and addBroadcast.
[BUGFIX] Corrected Preesm issue#3: The inserted SDFForkVertex was the target of an edge with the wrong consumption rate, provoking non-schedulable graph errors.

The problem occurs when an edge stands between two vertices with the same number of repetitions and the target one is instantiated during flattening due to inner loops.
In such case a SDFForkVertex is inserted between the two vertices, but the edge between the source and the Fork is set with a consumption rate without considering the number of repetitions of the source.