[server] check root pointers before access

To protect against cases when release() can be called from different
places

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
[install] provider registration is done in prestart

If for some unlucky reason provider registration is failed let's try to
do it it again next time statefs is starting.

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
[server] do not monitor config files changes

KISS in action: leave decision when state filesystem should be reloaded
if configuration is changed to external tools and simplify behavior of
the server

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
[rpm] registration is changed also for loaders

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
[rpm] use oneshot to register providers

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
[server] RootDir should be not NoLock but Mutex

Configuration is loaded as a result of concurrent operations, so it
should be protected

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
small refactoring

Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
Merge pull request #7 from deztructor/reliability

More shutdown fixes, use oneshot for registration