Algorithm improvements
Merge branch 'master' into algos

Conflicts:
	src/cws/core/simulation/Simulation.java
Cleanup in algorithms code
Algorithm improvements: handling post deadline cases, fixed utilization based provisioning, set up default provisioning values for VMs and running scripts usability changes.
Fixed all broken unit tests
Made Enviroment a constructor argument of schedulers to make them immutable types.
Storage aware versions of algorithms. Now awareness does not depend on the environment, it is algorithm characteristics.
Made generator scripts linux frendly
Changed the way global storage manager works: it now transfers files sequentially instead of in parallel. Other minor fixes areond the algorithm code.
Documentation improvement for storage aware algorithms and global storage manager.
Algorithms refactoring (no change in behavior).
Fixed broken unit tests for global storage manager.
Documentation for storage aware WADPDS and SPSS algorithms.
VM cleanup: removed unused methods and made as much as possible fields final. Moved VMFactory to the same package.
Added timeSpentOnTransfers and Computation metrics to the simulation output.
Merge remote-tracking branch 'malawski/master'

Conflicts:
	src/cws/core/dag/algorithms/CriticalPath.java
	src/cws/core/simulation/Simulation.java
Fix parsing of budget and deadline in logs

Couldn't parse exponential notation correctly because too simple a regex
was used. Fix by grabbing the rest of the line (`.*$` instead of
`\d+.\d+`) and letting pythons `float()` function do the real parsing.