Implement RDF::Value#to_term, and require that when creating a statement that a subject or object which is an RDF::Value must implement #to_term.
RDF::List#to_term returns the subject of the list, RDF::Term.to_term returns itself and any other RDF::Value is not implemented.
Added RDF::List() to be either an alias for RDF[:List], RDF::List.[], or to return itself if it is already a list, or to return a list made up of the members of its first argument, if it is an array. This mirrors Array() behavior.
This addresses issue #139.