No functional change - whitespace cleanup
* Gemfile.lock: update various gems to latest version
Razor::View#view_object_url: use object name in URL, compute collection name
Images: return correct reference from create_new_image; list/show images
Installers: return correct reference from create_installer; show installer query
Razor::Data::Tag::find_or_create_with_rule: idempotent find/create

This method will be used by create_tag and create_policy
create_tag command and very light testing
Rename Policy.sort_order to line_number and constrain it more

Calling it line_number will hopefully make it more intuitive that policies
are evaluated in ascending order (and it's what the old Razor called it,
too)

Also, insist that line_number is non-NULL and unique
Validate that named installer exists when saving policy

This is much weaker than a fk constraint, but better than no check at all
Revamp how hostname etc. in nodes gets set

The hostname_pattern for a policy is now assumed to produce fully-qualified
names (including domain)

The node now stores its own hostname, which is populated at the time when
the node is first bound to a policy; calling 'hostname' on a node that is
not bound is now legal, and will return nil.

The data model ensures that bound nodes always have a non-null hostname and
root_assword
Change interpolation of id into hostnames

The policy's hostname_pattern can now contain a '${id}' (rather than '%n')
to put the node's id into the hostname. This change is mostly there to
leave us some room to make other data available for use in
hostname_patterns - the '${expr}' syntax will just be more amenable to that
than the '%special' would be.
Command to create a new policy