PFP-GO: Integrating protein sequence, domain and protein-protein interaction information for protein function prediction using ranked GO terms