There are keyboard apps in the store, but, unlike Android*, Windows Phone Sand boxing prevents third-party apps from modifying/altering/controlling/affecting other apps/processes. This means that keyboard apps will not run simultaneously with other apps, which in effect makes them useless - can't use them to type anywhere else except within the keyboard app itself.
*- The absence of sand boxing in Android allows apps to interact with each other. Keyboards and shells will run, but so could viruses and rogue-hacker apps.