Displays correctly when added to UINavigationController
Added ability to set custom duration
Can redisplay a message right after manually dismissing it, instead of waiting for the predetermined delay