Finding the creation/annihilation operators Using Minkowski signature $(+,-,-,-)$, for the Lagrangian density 
$${\cal L}=\partial_{\mu}\phi\partial^{\mu}\phi^{\dagger}-m^2\phi \phi^{\dagger}$$
of the complex scalar field, we have the field
$$\phi(x)=\int{\frac{d^3 \vec{p}}{2(2\pi)^3\omega_\vec{p}}}(a(\vec{p})e^{-ipx}+b^{\dagger}(\vec{p})e^{+ipx}).$$
I'm trying to now find an equation for the $a(\vec{p})$ and $b(\vec{p})$ (with the final goal of finding an expression for $[a(\vec{p}),b^{\dagger}(\vec{q})]$ using $[\phi(x),\Pi(y)]$). 
What I should note is that we are considering all of this in the Schrodinger picture (t=0) so I suppose the very first thing to do is change all the $x$'s to $\vec{x}$ right?
The strategy I'm struggling to implement and failing at many points along the way:


*

*Find the momentum $\Pi^{\phi}(x)=\frac{\partial L}{\partial \dot{\phi}}=\dot{\phi^{\dagger}}$.

*Add some combination of $\phi(x)$ and $\Pi(x)$ to get rid of one of the creation/annihilation operators. 

*Do an inverse Fourier transform to find $a(\vec{p})$ in terms of $\phi(x)$, for example. 
None of the major text books seem to actually carry this through, and instead write something like "and it's easy to show…". However I don't find it too easy, especially part 3. as I'm not a Fourier transform expert. 
Could anyone either direct me somewhere where the above is computed explicitly (in more than 2/3 lines), or help me understand each of the 3 steps above?
(I realise it is easy to find a reference where this is done for the real scalar field, in which case we have $a(\vec{p})$ and $a^{\dagger}(\vec{p})$. Even still, I find it hard to follow parts.)
 A: The fields satisfy the wave equation. We can therefore write
\begin{equation}
\begin{split}
\phi(x) = \int \frac{ d^3 p}{ (2\pi)^3} \frac{1}{2 \omega_{\bf p} } \left[ a({\bf p}) e^{i p \cdot x} + b^\dagger({\bf p} ) e^{- i p \cdot x} \right] \\
\phi^\dagger (x) = \int \frac{ d^3 p}{ (2\pi)^3} \frac{1}{2 \omega_{\bf p} } \left[ b({\bf p}) e^{i p \cdot x} + a^\dagger({\bf p} ) e^{- i p \cdot x} \right] \\
\end{split}
\end{equation}
where $\omega_{\bf p} = \sqrt{ {\bf p}^2 + m^2 } $. Inverting this, we find (VERIFY THIS)
\begin{equation}
\begin{split}
a^\dagger (  {\bf p} ) &=  - i \int d^3 x e^{i p \cdot x} \overleftrightarrow{\partial_0} \phi^\dagger(x)  \\
b^\dagger (  {\bf p} ) &=  - i \int d^3 x e^{i p \cdot x} \overleftrightarrow{\partial_0} \phi(x)  \\
a (  {\bf p} ) &=   i \int d^3 x e^{-i p \cdot x} \overleftrightarrow{\partial_0} \phi(x)  \\
b (  {\bf p} ) &=  i \int d^3 x e^{-i p \cdot x} \overleftrightarrow{\partial_0} \phi^\dagger(x)  \\
\end{split}
\end{equation}
where $A  \overleftrightarrow{\partial_0} B = A \partial_0 B - (\partial_0 A ) B$. 
The conjugate momenta can be determined from the Lagrangian as
$$
\pi = \partial_0 \phi^\dagger,~~ \pi^\dagger = \partial_0 \phi
$$
The commutation relations in terms of the fields are
$$
[ \phi(t, {\bf x}), \pi(t, {\bf y}) ] = i \delta^3 ( {\bf x} - {\bf y} ) 
$$
Using this information, you should be able to compute the brackets of the mode coefficients. 
PS - I should add that I'm using the $(-+++)$ signature for the metric. 
