For a), when $\chi(F)<0$ $F$-bundles over $B$ are classified by maps $\pi_1(B)\to Mod(F)$, where $Mod(F)$ is the mapping class group of $F$. This boils down to the fact that $Diff_0(F)$ is contractible, which was proved by [Earle-Eells][1] in the compact case and [Yagasaki][2] in the non-compact case. 

The point is that $F$-bundles are classified by homotopy classes of maps $B\to BDiff(F)$. We have a fibration $$Diff(F) \to EDiff(F) \to BDiff(F).$$
Since $Diff(F)\simeq Mod(F)$, $BDiff(F)\simeq BMod(F) \simeq K(Mod(F),1) $. And homotopy classes of maps $B\to K(Mod(F),1)$ are in bijection with homomorphisms $\pi_1(B)\to Mod(F)$. 

For the other cases when $\chi(F)\geq 0$, the homotopy type of $BDiff(F)$ is known, eg Smale showed that $Diff(S^2)\simeq O(3)$. 




  [1]: https://mathscinet.ams.org/mathscinet-getitem?mr=277000
  [2]: https://mathscinet.ams.org/mathscinet-getitem?mr=1787857