Slightly refactored do_freeze
Some refactoring, using FileCache
Initial support for symlinks
Refactor trees and storage
Make things a bit more consistent
Add some real unit tests