adds EventEmitter object, spec
changes fcav to App(), uses EventEmitter model for better intra-component communication, correctly updates share map url when appropriate