CIMI: Cleanup in CIMI base models

- CIMI::Model::Resource moved from base.rb to separate file
- The $select methods moved to a separate module
- CIMI::Model::Collection helpers now extend the Base class without
  reopening it (extend CollectionMethods)
- CIMI::Model::Base methods layout reorganized to be more readable

Signed-off-by: Michal fojtik <mfojtik@redhat.com>
TrackedAt: http://tracker.deltacloud.org/patch/f76c0e6bdc4ec7ec6ba8686735e0baac9b9ce1aa
CIMI: Initial implementation of $filter parameter

This parameter should be able to filter all collections
using given key/value pair:

/cimi/machines?$filter=name="Mock1"

should return only those Machines with the 'name' attribute
set to 'Mock1'.

For now only '=' and '!=' operators are supported and only
one filter is supported in URL.

Signed-off-by: Michal fojtik <mfojtik@redhat.com>
TrackedAt: http://tracker.deltacloud.org/patch/9b2e338b9179d6fcf168790f9e27ece6373530b2