Identify YamlFile by path, not name

There is no point in storing a 'name' for a YamlFile, let's use the
path, which is unique.

Also, adds a test for the property.

Signed-off-by: martin f. krafft <madduck@madduck.net>
diff --git a/storage/yaml_fs/tests/test_yamlfile.py b/storage/yaml_fs/tests/test_yamlfile.py
index d8302f1..7e2bfb7 100644
--- a/storage/yaml_fs/tests/test_yamlfile.py
+++ b/storage/yaml_fs/tests/test_yamlfile.py
@@ -16,6 +16,9 @@
     def setUp(self):
         self._file = yamlfile.YamlFile(TESTFILE)
 
+    def test_path_property(self):
+        assert self._file.path == TESTFILE
+
     def test_data(self):
         e = self._file.entity
         c = e.classes
diff --git a/storage/yaml_fs/yamlfile.py b/storage/yaml_fs/yamlfile.py
index 0d1175a..56d1325 100644
--- a/storage/yaml_fs/yamlfile.py
+++ b/storage/yaml_fs/yamlfile.py
@@ -16,15 +16,13 @@
         self._path = path
         self._data = dict()
         self._read()
+    path = property(lambda self: self._path)
 
     def _read(self):
         fp = file(self._path)
         self._data = yaml.safe_load(fp)
-        self._name = self._data.get('name', self._path)
         fp.close()
 
-    name = property(lambda self: self._name)
-
     def _get_entity(self):
         classes = datatypes.Classes(self._data.get('classes', []))
         parameters = datatypes.Parameters(self._data.get('parameters', {}))
@@ -33,5 +31,5 @@
     entity = property(lambda self: self._get_entity())
 
     def __repr__(self):
-        return '<{0} {1}, {2}>'.format(self.__class__.__name__, self._name,
+        return '<{0} {1}, {2}>'.format(self.__class__.__name__, self._path,
                                        self._data.keys())