Queries are well documented in http://codex.wordpress.org/
example for current post (p) : ‘p=17’
example for custom post type (CPT) with name animals and searching one post with slug yellow-cat : ‘animals=yellow-cat’
example for CPT sharing taxonomy category with current post : ‘cat=27&post_type=animals’
Technically CPT seems to be an amazing solution but don’t forget that in data-model approach and query point of view it can be a nightmare if the preliminary study is no well done.
Hope that help to fin the road