Let $A$ be a unital $C^*$-algebra. Then elements of the $K$-group $K_0(A)$ are usually defined as equivalence classes of projections in matrix algebras over $A$. Such a projection, say $p\in M_n(A)$, can be identified with the finitely generated projective right $A$-module $pA^n$, and as such, we can define $K_0(A)$ using these $A$-modules.
If we view $A^n$ as a Hilbert $A$-module in the natural way, then $pA^n$ becomes a Hilbert $A$-submodule of $A^n$. It then seems that $K_0(A)$ can be equivalently defined be defined in the same way, but using Hilbert modules instead of algebraic $A$-modules.
I suppose this is in line with the fact that the group $KK(\mathbb{C},A)$ is isomorphic to $K_0(A)$.
Question 1: A priori, elements in $KK(\mathbb{C},A)$ are represented by countably generated Hilbert $A$-modules. What allows us to reduce to the case of finitely generated Hilbert $A$-modules?
Question 2: Given this, why do we need countably generated Hilbert $A$-modules to define the group $KK(B,A)$ in general, i.e. what new phenomena can arise when $\mathbb{C}$ is replaced by a general $C^*$-algebra $B$?