fix RuntimeRouter bug, add support for controller directive