Для вывода карты (слой OSM + ваши собственные векторные слои поверх него) можно использовать
Leaflet. Очень удобная в работе вещь, есть много плагинов.
Что касается поиска - думается, придётся писать отдельно. Можно использовать Backbone.js или другой фреймворк. Ну и это зависит от количества зданий - если их сколько-нибудь много, то стоит озаботиться хранением данных и поиском по ним в БД на сервере.