EditTextController now allows clients to set the keyboard type
prevent user from entering empty text in certain use cases

guarantee that the user cannot enter empty text where she is not allowed to
by presenting a modal view controller. this affects data entry for 1) player name,
2) GTP engine profile name, and 3) crash reporting contact email address.

up until now the user was able to circumvent the check for empty input texts
by 1) dismissing the keyboard, and then 2) tapping the tab bar controller's
tab item. this would cause the tab bar controller to pop all VCs on the navigation
stack and display the tab's root view controller. the VC where text entry was
happening would simply be deallocated and an empty text already entered
would be stored.
fix memory leaks (found by Xcode's analyze tool)
code cleanup to eliminate some warnings issued by Xcode's analyze tool

the cleanup consists of the following changes
- fix violations of Objective-C's naming rules regarding object ownership (e.g. no
  class methods that begin with "new")
- use autorelease in conjunction with alloc/init instead of release at a later time
- initialize variables
- don't assign values to variables where those values are never read
code cleanup: fix CommandProcessor object ownership policy

CommandProcessor was originally implemented with an object ownership policy in mind
that has its roots in C++: The client creates the command object, then submits it to the
processor which takes ownership of the command object and destroys it when it is done
with it. This policy, although workable, is non-standard for Objective-C, and potentially
confusing/misleading to other people reading the code. With this commit the non-standard
behaviour is fixed, and as a side-effect the corresponding warnings issued by Xcode's
analyze tool are eliminated.
code cleanup: eliminate Core Foundation related warnings by Xcode's analyze tool
fix memory leaks caused by not releasing UIAlertView objects