Non-Archimedean Analytic Geometry